【发布时间】:2014-10-20 11:16:18
【问题描述】:
我正在尝试构建一个应用程序,您可以在其中使用 ViewPager 滚动对象。由于 SDK 9 的限制,ViewPager 包含 Fragments,支持库。片段由 bean-object 中的数据构成。
当我将活动视图(带有 transaction.replace)离开到另一个片段(并返回)时,我所在的页面和左侧的 1-2 和右侧变为空白 - xml 中的任何内容都不会显示,并且显示 ViewPager-xml-element 的背景。滚动 x 页时,内容会返回到页面(不是全部,您需要为此滚动更多)。当我进入和离开 PreferenceActivity 时,我没有收到此错误。
是什么导致了这种行为,我该如何解决?
我的应用如下所示:
1 具有 FrameLayout 的 FragmentActivity。调用时相互替换的 2 个片段。在其中一个片段(浏览器)内部是一些按钮和一个 ViewPager。 ViewPager 有一个(固定的1)FragmentStateChangeAdapter。如果将其更改为 FragmentChangeAdapter 则没有区别。
该活动有一个在 ViewPager 中使用的 bean 列表和一个在另一个片段 Search 中使用的 ListView。
我尝试了一些建议但没有结果:
ViewPager + FragmentStatePagerAdapter + orientation change
A bug in (and a fix for) the way FragmentStatePagerAdapter handles fragment restoration
我可以提供代码,但这感觉像是一个理论问题,可能是关于保存的状态等。
【问题讨论】:
-
可以分享创建片段的代码吗?
标签: android android-fragments android-viewpager android-fragmentactivity fragmentstatepageradapter