具有FragmentStatePageAdapter的活动在重启时丢失数据(被销毁后)

时间:2017-10-05 17:46:59

标签: android android-fragments android-lifecycle fragmentstatepageradapter

我有一个MainActivity(MA)和一个DetailActivity(DA),其中MA包含一个显示在网格中的CursorLoaderRecyclerView)。如果应用程序进入后台(并且可能已被破坏)然后重新启动/恢复,那么MA将始终在重新启动时重新初始化(网格包含所有数据)。

另一方面,DA包含FragmentStatePagerAdapter,它获取相同的光标(来自MA)并在ViewPager中创建许多“页面”(片段)。每个这样的PageFragment在Bundle(参数)中获取光标的一行以供显示。

如果应用程序在显示DA时进入后台(但未被销毁),则PageFragment可以很好地恢复(包含数据)。但是,如果应用程序在显示DA后最终被销毁,那么应用程序将仅使用空白片段(无数据)进行恢复。

我该如何解决这个问题?我该找什么?难道我的DA(或可能PageFragment)没有保持状态变为非活动状态,还是更准确地处理恢复?

我假设它是PageFragment,并且可能不是DetailActivity,它必须更加正确地保存和/或恢复状态。我问,因为这种情况可能有一个非常明显的解释,或者至少我可能会得到一些关于检查内容的线索。

0 个答案:

没有答案