我需要互相加载20幅以上的图像,以形成一个交互式地图,可以在其中打开和关闭每个图层。
我决定为此使用LayerDrawable
,但我一直收到OutOfMemoryError。即使将Large Heap设置为true,它也可以加载约8张图像,但超出此数量仍会引发错误。
有没有一种方法可以将很多图像加载到LayerDrawable
中而不会出现该错误,还是有更好的方法来做到这一点?
最佳答案
感谢Luksprog的链接,我得以解决此问题。
在将图像添加到inSampleSize
之前,我使用Drawable[]
加载了每个图像的较小版本。这减少了很多使用的内存量。