当前位置:  开发笔记 > 编程语言 > 正文

Android嵌套ViewPager禁用触摸事件

如何解决《Android嵌套ViewPager禁用触摸事件》经验,为你挑选了1个好方法。

在我的应用中,我有一个ViewPager。在其中一个页面中,我有另一个页面,ViewPager其中通过自定义ViewPager实现禁用了滑动手势:

public class NonSwipeableViewPager extends ViewPager {

    public NonSwipeableViewPager(Context context) {
        super(context);
    }

    public NonSwipeableViewPager(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    @Override
    public boolean onInterceptTouchEvent(MotionEvent event) {
        // Never allow swiping to switch between pages
        return false;
    }

    @Override
    public boolean onTouchEvent(MotionEvent event) {
        // Never allow swiping to switch between pages
        return false;
    }
}

这很好用;子ViewPager中的滑动手势被禁用。但是,除非从屏幕的最右端开始滑动,否则无法滑动父ViewPager。如何使子级ViewPager忽略所有触摸事件/将其传递给父级视图?



1> untitled..:

答案很简单!

public class NonSwipeableViewPager extends ViewPager {

    public NonSwipeableViewPager(Context context, AttributeSet attrs) {
        super(context, attrs);

    }

    @Override
    public boolean canScrollHorizontally(int direction) {
        return false;
    }

} 

推荐阅读
LEEstarmmmmm
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有