我已经研究了一段时间的ImageView源代码,但是还没有找到可以做到这一点的方法。
问题:ScrollView中有30个400x800像素的图片(图片数量可变)。由于它们恰好适合屏幕大小,因此每个图片需要1.3 MB的RAM。
我的需求:
- 能够加载/卸载当前在ScrollView中可见的ImageView的位图。
- 如果用户滚动并且位图不再可见(在距离阈值内),则应释放位图,以便同一ScrollView中的其他位图可以使用该内存。我正在做缩小和所有操作,所以不要担心。
- 如果可能,只扩展ImageView来实现此目标,而不是与ScrollView混淆。
总结:我可以通过巧妙的技巧使图像仅在ImageView可见后加载,但是我不知道何时卸载它们。
注:由于其他可用性原因,我无法使用ListView来完成此操作。