我想异步下载多个图像。我有10个图像的阵列,我想在10 uiimageview
中显示这些图像,我这样做但它只显示一个图像
- (void)loadImage {
NSData* imageData = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:[myarray objectatindex:0]]];
UIImage* image = [[[UIImage alloc] initWithData:imageData] autorelease];
[imageData release];
[self performSelectorOnMainThread:@selector(displayImage:) withObject:image waitUntilDone:NO];
}
The final method we need to create takes in the image to display and sets it on our image view.
- (void)displayImage:(UIImage *)image {
[imageView setImage:image]; //UIImageView
}
请告诉我如何在不创建10种不同方法的情况下在不同图像上显示多个图像。
答案 0 :(得分:1)
请勿使用同步的initWithContentsOfURL
NSData
方法。
您可能需要考虑可以找到的here的UIImageView + AFNetworking类别,它可以UIImageView
异步地检索其内容。
正如评论中所建议的那样,您也可以查看SDWebImage,其基本相同。
答案 1 :(得分:0)
只需将这些类放入您的项目中,您就必须导入一些类。 对于sdwebimage,你会得到一个uiimageview的方法,就像“loadimagefrom url:withplaceholderimage”,只要检查一下我就不记得方法名。