1.My mainView - это UIScrollView. Я должен загрузить 9 изображений в качестве плиток на него.
2. Я вызываю функцию как другой поток, чтобы получить 9image и загрузить его в интерфейс (mainthread). При этом интерфейс остается отзывчивым.
3.Но проблема, даже когда изображения загружаются, они не отображаются в UIScrollView, пока весь поток не будет завершен. Но если я делаю какие-то действия с интерфейсом, я могу видеть, как каждый из них загружается и отображается.
- Означает, что я должен обновить интерфейс (mainthread) из фонового потока после загрузки каждого изображения в него. * +1007 *
Как я могу это сделать? Я дал код, который я использую для загрузки изображений в UIScrollView, который я вызываю, используя другой поток.
- (void)setUpDisplay:(NSArray *)array
{
NSAutoreleasePool *pool=[[NSAutoreleasePool alloc] init];
myScrollView.userInteractionEnabled = YES;
myScrollView.multipleTouchEnabled = YES;
int x=0,y=0;
CGRect frame;
for (i = 0; i < 3; i++)
{
if(j == 3)
{
x=x+256;
y = y-768;
}
for (j = 0; j < 3; j++) {
imageView = [[UIImageView alloc] initWithImage:[self getCachedImage:[NSString stringWithFormat:@"url to fetch images"]]];
frame = [imageView frame];
frame.origin.x = x;
frame.origin.y = y;
[imageView setFrame:frame];
imageView.userInteractionEnabled = YES;
imageView.multipleTouchEnabled = YES;
[myScrollView addSubview:imageView];
y = y+256;
[imageView release];
imageView=nil;
}
}
[pool release];
}