3

我的可绘制对象中有 100 多个图像(帧),每个图像大小为 1-5 kbs(分辨率为 480 x 272)。现在,当我在动画列表 xml 中添加这些图像(帧)并尝试运行它时,我得到了这个 OutOfMemory 错误,我在互联网上搜索但找不到我要找的东西。所以任何人都可以请告诉我应该怎么做才能克服这个错误

4

1 回答 1

5

阅读文章

在 manifest.xml 中做一件事

 <application

    android:largeHeap="true">

</application>

Or

runOnUiThread (Runnable action)或中调用动画AsyncTask

Or

单个图像需要内存:

在这种情况下,您有 100 张图像,尺寸为 400*262。

那么,100 * 400*262*4 = ?KB ,大小在加载期间发生。如果动画超过了虚拟堆内存的限制。

错误将不顾一切地发生。

为了这 :

缩小dimensions图像

或者

使用较少的动画图像

或者

split into two animation file完成一项后开始另一项

2015 年 6 月 16 日编辑

Handler几毫秒后尝试使用和调用 Handler。它还将减少内存问题(OOM)。

于 2013-10-30T06:02:59.207 回答