我有幾個動畫,當它們被觸發時,它們在執行之前會有不同長度的(無意的)延遲。如何正確地爲動畫預加載圖像陣列
裏面viewDidLoad
我有類似:
NSString *fileName;
myArray = [[NSMutableArray alloc] init];
for(int i = 1; i < 285; i++) {
fileName = [[NSBundle mainBundle] pathForResource:[NSString stringWithFormat:@"HD1.2 png sequence/HD1.2_%d", i] ofType:@"png"];
UIImage *image = [UIImage imageWithContentsOfFIle:fileName];
[humptyArray addObject:image];
//NSLog(@"Added object number %d: %@", i,regularImage);
}
falling.userInteractionEnabled = NO;
falling.animationImages = humptyArray;
falling.animationDuration = 6.3f;
falling.animationRepeatCount = 1;
我放在NSLog
,所以我可以確認該陣列填充與圖像,它是。當我想觸發動畫時,我打電話給[falling startAniamting]
。儘管數組已經預先加載了圖像,但我仍然會在觸發動畫和執行動畫之間有一段延遲。
我該怎麼做才能在觸發動畫時沒有延遲?
您可能沒有足夠的RAM。如果加載太多圖片,UIImage會自動釋放圖像並在下一次繪圖中從磁盤讀取數據。 –