三层ViewPager嵌套 的事件处理

这么多ViewPager嵌套在一起肯定会遇到冲突 不信你试试(笑脸) 下面来说怎么解决.....太为难我这个菜b了

设置外部的父控件不要拦截我子控件的事件,通过重写ViewPager的

    @Override
    public boolean onInterceptTouchEvent(MotionEvent ev) {
        return false;//不拦截事件, 让嵌套的子viewpager有机会响应触摸事件
    }

 

来决定 事件是否中断,返回true则子控件就不能滑动

 

完整的:

public class NoScrollViewPager extends ViewPager {

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

    public NoScrollViewPager(Context context) {
        super(context);
    }
    
    //决定事件是否中断
    @Override
    public boolean onInterceptTouchEvent(MotionEvent ev) {
        return false;//不拦截事件, 让嵌套的子viewpager有机会响应触摸事件
    }

    @Override
    public boolean onTouchEvent(MotionEvent ev) {
        // 重写ViewPager滑动事件, 改为什么都不做
        return true;
    }

}

 

posted @ 2016-02-11 22:05  阿冰的学习日记  阅读(388)  评论(0编辑  收藏  举报