美好的一天!
从网上下载完整尺寸的图片时,我会使用这两个库。
CODE:
-(void)viewDidAppear:(BOOL)animated
{
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^
{
[imageView sd_setImageWithURL:[NSURL URLWithString:[NSString stringWithFormat:@"%@", img]] placeholderImage:[UIImage imageNamed:@"stub_image.jpg"]];
dispatch_async(dispatch_get_main_queue(), ^
{
[MBProgressHUD hideHUDForView:self.view animated:YES];
});
});
事实证明,全尺寸图片的加载时间晚于隐藏指示器(显示的占位符图像)
我做错了什么?
答案 0 :(得分:1)
在您的代码中,行
[MBProgressHUD hideHUDForView:self.view animated:YES];
在下载完成之前执行。
方法sd_setImageWithURL:placeholderImage:
是非阻塞线程。
您应该使用completionBlock
的{{1}}并将隐藏方法添加到。
使用块
使用块,您可以收到有关图像下载进度的通知 每当图像检索成功完成时:
注意:如果您的图像请求在完成之前取消,则不会调用您的成功或失败阻止。
试试这段代码:
sd_setImageWithURL:placeholderImage:completed: