因为要设置外层ViewPager无法滑动,所以只能自定义一个ViewPager,继承ViewPager改写它的方法,当时不小心改写了onInterceptTouchEvent()方法
@Override
public boolean onInterceptTouchEvent(MotionEvent ev) {
return true;
}
onInterceptTouchEvent()有个特点就决定是否允许向下(子控件)传递Touch事件,当onInterceptTouchEvent()方法返回true,则向下传递之路被拦截(所有子控件的Touch事件都失效),所以导致嵌套里面的ViewPager无法滑动
应该改为改写onTouchEvent()方法
@Override
public boolean onTouchEvent(MotionEvent ev) {
return true;
}
onTouchEvent()只是决定当前控件是否消费了这个事件,返回ture本身不能滑动,不会影响子控件的Touch事件