【发布时间】:2015-09-15 07:04:00
【问题描述】:
我有一个 android 应用程序,我想在运行时向 ViewPager 动态添加和删除 Fragments,并在配置更改时保留 Fragments。
到目前为止,我已经实现了一个 FragmentStatePagerAdapter,将我的 Fragment 保存在一个列表中,使用方法 add、remove 和 replace 来操作我的 Fragments。基本上,他们所做的只是在列表中插入或删除一个片段,然后调用notifyDatasetChanged()。我在 Activity onCreate() 方法期间将凝视的 Fragment 作为新的 Fragment 插入。
我知道想在配置更改期间保留我的片段。目前,当我更改屏幕方向时,我当前的所有 Fragment 都会被删除,然后我会回到起始 Fragment,这自然是因为重新创建了 Activity,并且在 onCreate() 调用期间重新实例化了 Fragment 和 Adapater。我试图在活动onPause() 期间使用Adapter.saveInstance() 保存适配器的状态,但是当我尝试通过Adapter.restoreInstance() 恢复它时,我得到一个空适配器。
谁能给我一个提示,告诉我在 Android 中保存状态 FragmentStatePagerAdapter 的正确方法是什么?
【问题讨论】:
标签: android android-fragments savestate