У меня есть большая коллекция миниатюр, которые я отображаю в UIScrollView, и я бы хотел, чтобы они постепенно появлялись по одному.Прямо сейчас они все исчезают вместе после того, как все они загружены в представление прокрутки, просто скрывая и показывая представление прокрутки.Это нормально, но может потребоваться много времени для загрузки 500 изображений.
Я пробовал несколько различных вариантов того, что я хотел бы использовать с помощью фоновых потоков.
Я думал, что это будетработать точно, но не повезло.У меня есть NSMutableArray всех моих UIImageViews, которые я добавил в представление прокрутки, поэтому, как только они все на месте и размер прокрутки уменьшен, я вызываю:
[self performSelectorInBackground:@selector(addThumbnailToScrollView) withObject:values];
-(void) addThumbnailToScrollView: (NSDictionary *) aDictionary {
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
NSLog(@"Collection Item Count: %i, imageViewCount: %i", [self.collectionItems count],[self.imageViews count]);
UIImage *img = [Helpers getThumbnailImage:[aDictionary valueForKey:@"PhotoName"] withManufacturer:manufacturerID];
[(UIImageView*)[self.imageViews objectAtIndex:[[aDictionary valueForKey:@"i"] intValue]] setImage:img];
[(UIImageView*)[self.imageViews objectAtIndex:[[aDictionary valueForKey:@"i"] intValue]] setAlpha:0];
[UIView beginAnimations:@"fade" context:nil];
[(UIImageView*)[self.imageViews objectAtIndex:[[aDictionary valueForKey:@"i"] intValue]] setAlpha:1];
[UIView commitAnimations];
[pool drain];
}
Анимация UIView вызывает сбой, потому что этоя не думаю, что это сделано до того, как объекты будут выпущены.Даже когда я удаляю бит анимации, они все равно появляются на экране большими группами, а не 1 на 1.