对于我正在开发的应用程序,我有一个GridLayout(不是GridView),我用图像动态填充。我可以一次加载所有图像(这就是我现在所做的),但我对图像数量或设备的内存量没有任何保证。为了解决这个问题,并且仍然保持最佳的UI体验(没有悬挂)我认为最好确定设备的内存量,例如说我的应用程序可以使用一半的可用内存来保存图像。然后我会使用这个最大数量的图像并告诉我的应用程序在从当前滚动位置延伸的两个方向上加载这个最大图像量的一半。你们知道一个正确的方法吗?我有点难过,可以真正使用一些帮助开始。
答案 0 :(得分:1)
我遇到过这样的问题(需要将超过100个高分辨率图像加载到ListView并缓存它们)。我已经按照这里描述的方式使用了DiskLruCache库(https://github.com/JakeWharton/DiskLruCache):
Using DiskLruCache in android 4.0 does not provide for openCache method
完美无缺。