Android FragmentStatePagerAdapter:更改数据集后继续显示当前片段
我有一个寻呼机 假设底层数据集是d0、d1、d2、d3等,相应的片段是f0、f1、f2、f3 当前片段f1可见,即Android FragmentStatePagerAdapter:更改数据集后继续显示当前片段,android,android-layout,android-fragments,android-viewpager,fragmentstatepageradapter,Android,Android Layout,Android Fragments,Android Viewpager,Fragmentstatepageradapter,我有一个寻呼机 假设底层数据集是d0、d1、d2、d3等,相应的片段是f0、f1、f2、f3 当前片段f1可见,即ViewPager的位置1。d0被删除,并在适配器上调用notifyDataSetChanged 现在,当前可见片段将变为f2,即f2将位于ViewPager 我希望f1在数据集中更改后保持可见,即,ViewPager应显示与位置0相对应的Fragment 如何做到这一点 编辑:目前,我正在使用viewpager.setCurrentItem(int position)来实现这一点,
ViewPager
的位置1。d0被删除,并在适配器上调用notifyDataSetChanged
现在,当前可见片段将变为f2,即f2将位于ViewPager
我希望f1在数据集中更改后保持可见,即,ViewPager
应显示与位置0相对应的Fragment
如何做到这一点
编辑:目前,我正在使用
viewpager.setCurrentItem(int position)
来实现这一点,但它的UI体验不稳定。用户可以看到viewPager
项的更改。尝试调用viewPager.setCurrentItem(int position)
以获取所需片段的位置。请更具体,或者更好,发布一些相关信息code@AbrahamyanSamvel我把问题编辑得更具体一些。你做到了吗?我目前正在尝试这样做是的,我目前正在使用,但这是一种急促的体验。Fragment
的更改是可见的。这是因为您正在调用notifyDataSetChanged(),并使viewpager重新绘制选项卡和片段,而不是notifyDataSetChanged()
?您是否尝试为viewpager适配器扩展FragmentStatePagerAdapter?