【发布时间】:2013-04-19 18:26:27
【问题描述】:
我已经阅读了很多关于在 FragmentActivity 中恢复数据的内容,但在我的情况下没有任何效果。我尝试了很多方法来做到这一点,但都没有成功。
我有一个 FragmentActivity,其中包含一个带有 6 或 7 个片段的 ViewPager。这些片段中的每一个都包含一个 ListView。这些 ListView 中的数据是从 web 检索到的。
我可以在片段中选择 ListView 的一个项目来打开一个显示所选项目详细信息的新活动。
当我回到我的 FragmentActivity 时,我不想从 Web 检索新的时间数据,而是从捆绑包或其他允许我立即显示数据的东西中获取它。
我尝试了 getLast(Custom)NonconfigurationInstance() 但它仅在实际配置发生更改时调用(例如屏幕方向)。我还尝试了 FragmentActivity 中的 onSavedInstanceState,在 Fragment 中,没有调用 super 方法......我总是在我的 onCreate/onCreateView 中得到一个空的 savedInstanceState 包。
我没有给你的代码,因为我回到零。
有什么想法吗?
【问题讨论】:
-
第一次获取数据时以持久方式(首选项、文件、数据库)保存数据。
-
我想过,但我认为这是一个不好的做法:应该使用 Preferences 来保存持久数据;即使应用程序关闭,数据也是持久的。但我暂时没有其他方法可以做到这一点,所以我会试试这个。
-
或者您可以将其保存在应用程序级别并在应用程序存在时将其保存在内存中。当你回到
Activity时,看看你是否有可用的数据(也许有一个时间戳,看看你是否不应该刷新它,即使它存在),如果它不可用,请检索它。
标签: android-fragments bundle android-fragmentactivity data-retrieval