[英]Open ViewPager2 to particular position without scrolling
我已经用一些视频(比如 10)实现了一个 recyclerview。 单击任何项目会打开一个viewpager2 which is on some other activity
中, and
显示了被单击的一个(来自recyclerview
)。 之后,用户只能从那里滚动到其他项目。 一切正常。
只有当 recyclerview 项目单击 viewpager2 打开时的滚动问题。
Whenever any item is selected(10th). viewpager 首先打开,然后滚动到(第 10 个)位置。 我想直接打开viewpager2的第10个位置而不滚动。 任何帮助,将不胜感激。
我尝试将当前项目设置为
viewPagerReview.currentItem = recyclerviewItemSelectedPosition
但是如果当前项目是 recyclerview 的最后一个位置,那么 viewpager 也会滚动到最后一个位置。
好吧,根据AndroidDocs上的 ViewPager2,这就是setCurrentItem(item: Int)
会做的事情:
设置当前选择的页面。 如果 ViewPager 已经通过其当前适配器的第一个布局,则当前项目和指定项目之间将有一个平滑的动画过渡。
因此,您将要使用另一种方法,即setCurrentItem(item: Int, smoothScroll: Boolean)
smoothScroll
指定是否要平滑滚动。
因此,就您而言,请选择:
viewPagerReview.setCurrentItem(recyclerviewItemSelectedPosition, false)
此问题的正确解决方案遵循此方法 setCurrentItem(item :Int, smoothScroll : Boolean) viewPager.setCurrentItem( 2, false)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.