我需要互相加载20幅以上的图像,以形成一个交互式地图,可以在其中打开和关闭每个图层。

我决定为此使用LayerDrawable,但我一直收到OutOfMemoryError。即使将Large Heap设置为true,它也可以加载约8张图像,但超出此数量仍会引发错误。

有没有一种方法可以将很多图像加载到LayerDrawable中而不会出现该错误,还是有更好的方法来做到这一点?

最佳答案

感谢Luksprog的链接,我得以解决此问题。

在将图像添加到inSampleSize之前,我使用Drawable[]加载了每个图像的较小版本。这减少了很多使用的内存量。

09-05 18:14