2

在我的应用程序中,我使用支持库中的 ViewPager-v4

  1. 在主屏幕中,我有 viewPager,它最多有 5 个片段,所有片段都属于一个类 ArticlePager

  2. 现在在主屏幕上有类别列表,现在寻呼机的内容基于该选择,

我遇到的问题是,我使用FragmentPagerAdapter了哪个存储片段,如果片段已经存在,它将返回旧片段而不重新创建它。事情运行得很好,但是问题发生在方向改变的时候。

例如

如果每个片段中通常有 5 个视图对于给定的位置,但也有一些包含 2-3 个视图。现在,如果我更改页号上的方向,让我们说 5 里面只包含 3 个视图

所以,到现在为止,在第 5 页的每个类别中,我都会得到包含 3 个视图的视图,这不是我想要的。

在我的应用程序中,每个类别都包含分页

有什么方法可以让我在点击类别时销毁和重新创建片段?或任何其他解决方法

谢谢

4

2 回答 2

6

好的,感谢开源我找到了我的解决方案,FragmentPagerAdapter我已经覆盖了该方法instantiateItem并得到了解决方案。

这可以通过FragmentStatePagerAdapter不存储片段来轻松实现。它一直在重新创建它,但我不希望它出现在 100 页的页面中,因为只有几页。

于 2012-05-24T10:21:17.430 回答
0

因此,如果我理解正确,您的问题是旋转后,ViewPager 中有错误的片段集?

为什么不检查 Activity 的 onResume() 或 onStart() 中当前选择的选项卡,并使用正确的片段为 ViewPager 创建/分配一个新的 PagerAdapter?

于 2012-05-24T09:21:57.800 回答