如何在另一个ViewPager2中使用ViewPager2

问题描述 投票:0回答:4

我在另一个 ViewPager2 中使用 ViewPager2。因此,幻灯片仅适用于根 ViewPager。如何让两个 ViewPager 都工作?

android android-recyclerview android-viewpager android-viewpager2
4个回答
15
投票

正如文档所说:

“支持嵌套可滚动元素

ViewPager2 在滚动视图与包含它的 ViewPager2 对象具有相同方向的情况下本身不支持嵌套滚动视图。例如,滚动不适用于垂直方向的 ViewPager2 对象内的垂直滚动视图。

要支持 ViewPager2 对象内具有相同方向的滚动视图,当您希望滚动嵌套元素时,必须在 ViewPager2 对象上调用 requestDisallowInterceptTouchEvent() 。 ViewPager2 嵌套滚动示例演示了使用多功能自定义包装器布局解决此问题的一种方法。”

我自己尝试过,效果很好,你需要使用这个

这是文档的链接


0
投票

创建自定义框架布局在某些情况下可能很有用,但请记住,如果子 viewpager2 中有任何在单击子 viewpager2 中的选项时触发的功能,它将无法正常工作,因为它无法检测您的点击功能。 例如 : 如果子 vewpager2 中有一个按钮,可以将您导航到其他活动。不起作用。因为框架布局可以访问触摸,并且它将拦截对按钮的触摸。因此它可能无法点击。 我自己也曾尝试过并遇到过这个问题。 仍在寻找在 viewpager2 内部使用 viewpager2 的问题的最佳解决方案。 我尝试在父级中使用viewpager而不是viewpager2,所以它工作得很好,如果你想让它正常工作那么你可以使用viewpager。 但仍然需要解决这个问题。


-1
投票

我已经测试了该类,但是nestedScrollHost类不使用viewPager,该类使用回收器而不是viewpagers。


-2
投票

mPager.setNestedScrollingEnabled(true) 对于子视图

© www.soinside.com 2019 - 2024. All rights reserved.