2012-04-10 30 views
0

我有一個三秒的PNG序列(一個標誌動畫),我想在我的iOS應用程序啓動後立即顯示。由於這是應用程序中唯一的動畫序列,因此我不想使用Cocos2D。iOS動畫標誌 - 低內存替代

但是隨着UIImageView的animationImages,應用程序在iPod Touch設備上的內存不足。

是否有更多的記憶/有效的方式來顯示此動畫?也許一個不涉及Cocos2D的精靈表類?或者是其他東西?

+0

圖像有多大?特別是,它們消耗了多少字節? (通常這是寬度*高度*通道,一個彩色透明PNG將有4個通道。)您是否有單獨的iPhone和iPad大小的版本,或者iPod touch是否必須加載iPad圖像? – Dondragmer 2012-04-10 05:21:11

+0

我認爲它是全屏?它的大小與整個應用程序相比如何?如果一個5MB的應用只用了3秒鐘的眼睛糖就只有2.5MB,我會生氣。即使遊戲不使用這種動畫序列。 – 2012-04-10 05:24:44

回答

2

如果這是一個動畫啓動畫面或類似的,請注意,HIG在這種行爲(至少在全屏遊戲之外)皺眉。

如果你沒有被這樣的爭論(或製作遊戲)所束縛,你可以考慮將你的動畫保存爲MPEG-4視頻並使用MPMoviePlayerController來呈現它。使用好的壓縮器,應該可以大大減少內存的使用量,並且仍然有很好的質量標誌動畫。

我懷疑你會找到其他任何改進的方式 - 例如,一張精靈表格仍然會像PNG序列一樣進行同樣的工作。問題在於,對於大多數動畫來說,很多像素在幀與幀之間沒有任何變化......如果您將它呈現爲一系列圖像,那麼您在時間上重複的像素上浪費了大量時間和空間。這就是爲什麼我們有視頻編解碼器。

0

你可以嘗試手動加載/卸載PNG圖像根據需要。我不知道你的幀速率要求是什麼。另外,考慮一個體面的質量JPG或動畫的GIF。而且你總是可以使圖像更小,因此它不佔用整個屏幕。只是幾個想法。