解决ViewPager2 + Fragment + RecyclerView 滑动冲突

冲突现象描述

当RecyclerView上拉到底时,容易导致Viewpager2的水平方向滑动。

产生原因

当列表上拉到底部时,滑动距离并没有被消费,因此没有执行禁止外层拦截的方法。所以会让外层viewpager2来消费滑动事件。
RecyclerView的onTouchEvent方法

解决方法

我们需要消费掉着个滑动距离。
新建一个ViewGroup,重写NestedScrollingParent3接口方法,用它包裹RecyclerView:
在这里插入图片描述

DONE!!!

更多推荐