0

在此处输入图像描述

我正在尝试为每个选项卡添加一个 ViewPager 以显示图像。对于启动的第一个选项卡,一切都很好。在自定义 FragmentStatePagerAdapter 的帮助下获取片段。我在 CreateTabContent 方法中实例化一个新的 ViewPager 对象。

在显示第一个选项卡的内容后,单击选项卡 2 时会出现问题。我在新的 ViewPager 对象上设置了一个新的 FragmentStatePagerAdapter 对象。同样,getCount、getItem、getItemPosition 等所有方法都能正常执行,但对象未附加到 ViewPager。

在检查 hierarchviewer 时,我发现没有创建 NoSaveStateFrameLayout 对象。

谢谢。

注意:我已经实现了 notifyDataSetChanged。

出现问题

4

1 回答 1

1

我找到了解决方案。我再次仔细检查了hierarchyviewer,发现NoSaveStateFrameLayout 对象应该附加到下一个选项卡的ViewPager 被附加到第一个ViewPager。因此,当使用以下代码单击下一个选项卡时,我在选项卡 1 上分离了 ViewPager:

FrameLayout frameLayout  = mTabHost.getTabContentView();
frameLayout.removeViewAt(index);

现在,只有一个 ViewPager 对象存在并且一切正常。

于 2012-05-16T13:00:46.167 回答