ScrollView中嵌套滚动控件手势解决

今天做项目时遇到这么一个场景,在一个ScrollView中需要有一个时间选择控件,就是仿的iOS时间选择那种,布局实现很简单很快实现,可是就是在玩的时候,轮子滚动和外层的ScrollView滚动起了一点摩擦。
一上来就想到的是事件冲突了。最终有这么一个简单的方法。

1
2
3
4
5
6
7
8
9
10
11
listView.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_UP) {
mSrollView.requestDisallowInterceptTouchEvent(false);
} else {
mSrollView.requestDisallowInterceptTouchEvent(true);
}
return false;
}
});

mSrollView.requestDisallowInterceptTouchEvent()这句话的意思就是告诉父view不要拦截此事件,哥自己来处理就好。
对listview,scrollView,recycleView都适用。

版权声明:



除非注明,本博文章均为原创,转载请以链接形式标明本文地址。

坚持原创技术分享,您的支持将鼓励我继续创作!