我正在使用AFNetworking为单元格占位符加载我的图像。这是我的代码示例。 (来自here的令牌)
NSURL *url = [NSURL URLWithString:daysWeather.weatherIconURL];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
UIImage *placeholderImage = [UIImage imageNamed:@"placeholder"];
__weak UITableViewCell *weakCell = cell;
[cell.imageView setImageWithURLRequest:request
placeholderImage:placeholderImage
success:^(NSURLRequest *request, NSHTTPURLResponse *response, UIImage *image) {
NSLog(@"Load placeholder img");
weakCell.imageView.image = image;
[weakCell setNeedsLayout];
} failure:nil];
return cell;
现在我有一个问题。当这些图像变得可见时,它每次都会加载吗?如您所见,我在成功块中添加了NSLog(@"Load placeholder img");
。而且我看到,这个代码每次调用时,细胞变得可见(在它可见之后,消失并再次可见)
答案 0 :(得分:2)
是每次调用成功阻止。但AFNetworking只下载一次图像并将其保存在缓存中。一旦再次请求相同的URL或图像,它将直接从缓存加载图像(如果可用)。
此外,如果您不想在块中执行任何特定操作,则只需使用 setImageWithURL:placeholderImage 。