我在動畫序列中使用了150張圖像。在UIImageView中動畫圖像需要太多內存
這是我的代碼。你可以使用NSMutableArray * arrImages = [[NSMutableArray alloc] initWithCapacity:0];
for(int i = 0; i <=158; i++)
{
UIImage* image = [UIImage imageNamed:[NSString stringWithFormat:@"baby%05d.jpg",i]];
[arrImages addObject:image];
}
babyimage.animationImages = arrImages;
[arrImages release];
babyimage.animationDuration = 6.15; [babyimage startAnimating];
但它佔用的內存太多。播放1分鐘後,它會在控制檯中顯示內存警告。然後墜毀,我也降低了圖像分辨率,而且我無法將其降低到150以下,以獲得更好的質量。
有沒有更好的方法來做這個動畫沒有內存問題。 非常感謝 plz幫助...
這不會真的有幫助,因爲150張圖像仍然需要一次加載到內存中......它們沒有被緩存,但它們仍然被'arrImages'保留,因此它們不會被釋放... – sergio
@sergio我在我的應用程序中也具有相同的功能,通過這種方式,我的應用程序崩潰不再發生。我正在循環運行250個圖像,每個圖像的大小几乎爲250 kb .. –
@ P.J感謝您的回覆。我已經嘗試過,但加載所有圖片需要花費太多時間.BTW非常感謝。 –