正如标题所说,我需要获取图像并将其放入数组中。
UIImageView *myImage = [[UIImageView alloc] init];
[myImage setImageWithURL:[NSURL URLWithString:@"http://host.com/images/1/1.png"] placeholderImage:[UIImage imageNamed:@"page3.png"]];
[items addObject:myImage];
问题是,在加载图像时,代码会继续,并且没有任何内容被放入数组中,实际上我想插入一个空的UIImageView。
我该如何解决这个问题?
在旁注上我使用iCarousel来显示图像,在数据源中它获取图像数组并显示它们。我能以某种方式修改iCarousel吗?
提前致谢。
答案 0 :(得分:4)
您可以使用setImageWithURLRequest方法提供成功消息,或者在完成后执行UI更新,例如使用以下方法:
- (void)setImageWithURLRequest:(NSURLRequest *)urlRequest
placeholderImage:(UIImage *)placeholderImage
success:(void (^)(NSURLRequest *request, NSHTTPURLResponse *response, UIImage *image))success
failure:(void (^)(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error))failure;
这是一个例子(未经测试)
[image setImageWithURLRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"host.com/images/1/1.png"]] placeholderImage:[UIImage imageNamed:@"page3.png"]
success:^(NSURLRequest *request, NSHTTPURLResponse *response, UIImage *image){
//reload data here
}
failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error){
//handle errors here
}