Знаете ли вы, что изображения не помещаются в память сразу? Если вы хотите прокручивать их между собой, вы должны перемещать их по страницам, чтобы сохранить приличный объем памяти.
Что касается их загрузки, вам, вероятно, следует отобразить счетчик, начать загрузку изображения в фоновом режиме, а затем заменить его на изображение, как только оно будет готово. Загрузка изображения с помощью NSURLConnection
излишня, вам, вероятно, будет проще с imageNamed:
- (void) startLoadingImage {
// You need an autorelease pool since you are running
// in a different thread now.
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
UIImage *image = [UIImage imageNamed:@"foo"];
// All GUI updates have to be done from the main thread.
// We wait for the call to finish so that the pool won’t
// claim the image before imageDidFinishLoading: finishes.
[self performSelectorOnMainThread:@selector(imageDidFinishLoading:)
withObject:image waitUntilDone:YES];
[pool drain];
}
- (void) viewDidLoad {
UIActivityIndicator *spinner = …;
[self.view addSubview:spinner];
[self performSelectorInBackground:@selector(startLoadingImage)
withObject:nil];
}
- (void) imageDidFinishLoading: (UIImage*) image {
// fade spinner out
// create UIImageView and fade in
}
Имена методов пишутся по памяти, я мог пропустить параметр здесь или там. Но в принципе код является звуковым.