我聽說使用位圖列表進行動畫是個不錯的主意。但是我還沒有遇到過這種情況,直到現在才證明這是真的。在Android上使用PNG進行動畫
我有很好的代碼。但只能在模擬器上或運行Android 6的手機上運行。低於此值,我會在完成初始化之前收到內存不足。
這是我如何加載在圖像:
public static Image[] flameIs = new Image[300];
for (int i=0;i<300;i++) {
if (i>=10) framePref="000";
if (i>=100) framePref="00";
Assets.flameIs[i] = g.newImage("frames/lighter_" + framePref +i+ ".png", ImageFormat.RGB565);
}
所以它像300米的PNG文件,8位,每個大約12K的大小。我們正在談論價值不到4MB的圖像。
所有應用程序以後都會在循環中永久運行這些幀。
有沒有辦法避免「內存不足」?
你的位圖的平均尺寸是多少? – Gauthier
它們都是459x620 – durbnpoisn
然後,您的每張圖片都需要284,580字節來存儲未壓縮的數據(459 x 620 x 8位)。對於堆上的81 MB的300張圖像。 –