我的应用程序中的活动包含片段,这些片段又包含充满位图数据的列表视图/网格视图。最终用户将耗尽内存,因为先前活动的视图及其片段没有被破坏。因此,当用户达到第 10 个活动时 - 前 9 个活动持有大量位图数据。
我已经在使用弱引用,但是 MAT 说某些片段的视图包含对例如 Gallery 的引用,而 Gallery 又包含适配器等。因此 ImageViews 保持活动状态,位图也是如此。
到目前为止,我已经尝试过完全移除片段、移除适配器。有时它有效,但我想知道为什么这会如此复杂,是否有任何更简单的方法可以在没有太多编码的情况下释放/获取?
UPD
我会欣赏一个挑战相同问题的开源应用程序示例。
UPD2
我的大部分活动的蓝图是:活动持有片段。片段包含充满图像视图的 AbslistView。
谢谢。