我正在创建一个iphone应用程序,我正在尝试使用URL从后端服务器获取多个(5-7)高分辨率图像。我需要在幻灯片中设置所有获取的图像,现在问题是,如果我从服务器获取图像,那么第一次我的图像不显示。而不是图像,我得到白色背景。再次,如果我返回并获取相同的图像,那么它正确显示。
这是我的代码:
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_LOW, 0), ^{
for (int i=0; i<[end.slideShowArray count]; i++) {
SlideShow *pro = [[SlideShow alloc] init];
pro = [end.slideShowArray objectAtIndex:i];
NSURL *url = [NSURL URLWithString:pro.imageUrl];
NSData *imageData = [NSData dataWithContentsOfURL:url];
UIImage *img = [UIImage imageWithData:imageData];
dispatch_async (dispatch_get_main_queue (),
^{
[slideshow addImage:img];
});
}
});
答案 0 :(得分:1)
您每次在循环中创建一个新的SlideShow。我认为您打算创建一个幻灯片放映,然后将所有图像添加到其中。