将 up/down 滑动事件从 ViewPager2 传播到父 BottomSheet
Propagate up/down swipe event from ViewPager2 to parent BottomSheet
我有一个 BottomSheetBehavior
视图,其中包含一个 ViewPager2
。除了试图在 ViewPager2
上滑动 BottomSheet
up/down 之外,两者都运行良好并且做他们需要的事情。
同样,如果手指在 ViewPager2
上方或下方,则在 BottomSheet
上滑动 up/down 效果很好,除非手指在 ViewPager2
.
上方
我需要了解如何将 up/down 滑动事件通过 ViewPager2
传播到 BottomSheet
。
代码非常零散,所以在这里展示会很复杂,而且没有多大意义。我只需要如何传播事件的原理。
这是因为ViewPager2内部RecyclerView
的嵌套滚动默认是开启的。要禁用它:
viewPager.children.find { it is RecyclerView }?.let {
(it as RecyclerView).isNestedScrollingEnabled = false
}
我有一个 BottomSheetBehavior
视图,其中包含一个 ViewPager2
。除了试图在 ViewPager2
上滑动 BottomSheet
up/down 之外,两者都运行良好并且做他们需要的事情。
同样,如果手指在 ViewPager2
上方或下方,则在 BottomSheet
上滑动 up/down 效果很好,除非手指在 ViewPager2
.
我需要了解如何将 up/down 滑动事件通过 ViewPager2
传播到 BottomSheet
。
代码非常零散,所以在这里展示会很复杂,而且没有多大意义。我只需要如何传播事件的原理。
这是因为ViewPager2内部RecyclerView
的嵌套滚动默认是开启的。要禁用它:
viewPager.children.find { it is RecyclerView }?.let {
(it as RecyclerView).isNestedScrollingEnabled = false
}