我的Android应用程序包含一些用于列表背景和其他内容的图像(图像大小在2KB到20KB之间),我需要放置六个布局,一次只有一个是可见的(其中4个包含两个可扩展的列表视图)活动。列表不是很长,每个约10项。当我开始并经过一段时间后去另一个行为(从这个沉重的到新的没有完成)我得到了OutOfMemory异常。当我构建我的应用程序时,它只有大约2.5 MB。 我有很多setBackground函数和5个ViewPagers。如果我将一些布局设置为null,它会很快导致垃圾收集吗?有没有人有类似的问题whwn处理应用程序内的很多图像?
答案 0 :(得分:0)
我怀疑当你设置背景时,你只是调用setBackground(...)
我建议您根据此example加载位图。
类似于setBackground(decodeSampledBitmapFromResource());
这是不好的做法,但是当您释放资源时,您总是可以调用System.gc();
来限制/强制GC。