我使用imageWithContentsOfFile:加载了一个巨大的图像,因此我必须在此过程中设置一个activityIndicator。
有什么方法/任何委托回调可以用来通知此加载过程的结束?
最佳答案
imageWithContentsOfFile
是同步的。
您可以启动 Activity 指示器,将大图像加载到后台线程中的内存中,然后返回主线程并停止指示器。
- (void)loadBigImage {
[activityIndicator startAnimating];
[self performSelectorInBackground:@selector(loadBigImageInBackground) withObject:nil];
}
- (void)loadBigImageInBackground {
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
UIImage *img = [UIImage imageWithContentsOfFile:@"..."];
[self performSelectorOnMainThread:@selector(bigImageLoaded:) withObject:img waitUntilDone:NO];
[pool release];
}
- (void)bigImageLoaded:(UIImage *)img {
[activityIndicator stopAnimating];
// do stuff
}
关于iphone - 如何获得有关imageWithContentsOfFile:完成的通知?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5379213/