ViewPager中加入ScrollView,ScrollView无法上下滚动,这是什么问题?

ViewPager中加入ScrollView,ScrollView无法上下滚动,这是什么问题?

2个回答

ViewPager本身控制着Touch事件的下发操作,每个Touch事件的下发都遵从从上至下层层递归,ScrollView真正获得Move事件前,Move事件必须经过ViewPager的onInterceptTouchEvent和dispatchTouchEvent事件,前者执行拦截操作后者执行下发操作。ViewPager便是在onInterceptTouchEvent中对Move事件进行了过滤,当移动距离超过一定值时,它会拦截掉Move事件,阻止ScrollView继续处理Touch事件的权利,转而让自身的onTouch事件处理。

在viewpager的dispatch和intercept事件里判断手指滑动,如果是竖着滑动,就把事件继续传递下去,而不是截断。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐