标签: android android-fragments
我在活动中有一个片段,我动态创建视图,并在用户从我创建的图库中选择图像后将图像分配给图像视图。但是,如果用户点击后退按钮然后重新打开片段,则视图已全部重置且没有图像。我已经尝试了几种不同的处理保存状态的方法,但由于我可能处理多达20个图像我不知道如何处理我的片段的状态是因为我尝试过的方法似乎都没有用。现在我试图使用Fragment.SavedState并使用它重新实例化但我无法弄清楚如何实际使用savedstate。任何有关此事的帮助或建议将不胜感激。
答案 0 :(得分:3)
最好的办法是使用LRU缓存,以获得最佳性能,您希望将基于内存的缓存和基于磁盘的缓存结合起来。杰克沃顿有一个很好的实施here。
一旦片段/活动不再可见,就可以进行垃圾收集,因此您需要能够重建整个视图。我建议在开发者选项中打开Don't Keep Activities进行测试。
Don't Keep Activities
有一个很好的例子,可以在Android开发者网站的BitmapFun中从网络加载图片。