【发布时间】:2014-02-19 20:36:14
【问题描述】:
我有一个Activity,里面有一个ViewPager。当创建活动时,会执行 asyncTask,当任务完成时,会使用结果数据创建 Fragment。(重要提示:如果没有此数据,Fragment 创建视图将崩溃,因为它明确需要该数据)
现在Fragment 创建后,我返回主屏幕,打开另一个应用程序等等并创建内存不足的情况。我的Activity 因为内存不足被杀了。
现在我打开任务管理器并再次单击我的应用程序。
Android 会尝试将所有内容重新显示在屏幕上。由于所有Activity 被杀死,数据也丢失了,但它仍然尝试重新创建片段,尽管没有数据并且我的应用程序崩溃了。
我能做什么?...我有两个解决方案(至少理论上的解决方案)
防止在恢复时重新启动活动(我该怎么做????)
防止片段创建视图使用数据,除非它存在
好吧,我确实实施了第二个解决方案。所以应用程序一开始不会崩溃,因为“不存在数据”是handeld。但我意识到 ViewPager 也与片段断开连接,因为井活动被杀死。所以我无法从活动中返回片段。
【问题讨论】:
标签: android android-activity fragment low-memory