Я выполняю ленивую загрузку изображений в массив после загрузки приложения. Я пробовал использовать NSMutableArray и NSArray (мне не нужно изменять массив после его создания), но последний вылетает у меня.
...
[self performSelectorInBackground:@selector(loadImageArrays) withObject:nil];
...
- (void)loadImageArrays {
NSAutoreleasePool *pool;
pool = [[NSAutoreleasePool alloc] init];
NSString *fileName;
imageArray = [[NSMutableArray alloc] init];
for(int i = 0; i <= x; i++) {
fileName = [NSString stringWithFormat:@"image_0000%d.png", i];
[imageArray addObject:[UIImage imageNamed:fileName]];
}
[pool drain];
}
vs
NSAutoreleasePool *pool;
pool = [[NSAutoreleasePool alloc] init];
imageArray = [[NSArray alloc] initWithObjects:
[UIImage imageNamed:@"image_00000.png"],
[UIImage imageNamed:@"image_00001.png"],
[UIImage imageNamed:@"image_0000X.png"],
nil];
[pool drain];
NSZombieEnabled = YES сообщает мне, что [сохранение UIImage] было отправлено освобожденному экземпляру при использовании последнего фрагмента кода. Оба массива имеют свойство (неатомарное, сохранять) в моем h-файле. Почему изображения не сохраняются в NSArray?