UIImageView
セルをクリックするとフルサイズの画像をダウンロードするこの方法があります。
- (void)configureView
{
NSURLRequest *URLRequest = [[NSURLRequest alloc] initWithURL:self.imageURL];
AFImageRequestOperation *operation = [[AFImageRequestOperation alloc] initWithRequest:URLRequest];
[operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) {
[SVProgressHUD showSuccessWithStatus:@"Done!"];
[self.imageView setImage:responseObject];
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"Error: %@", error);
}];
[operation setDownloadProgressBlock:^(NSUInteger bytesRead, long long totalBytesRead, long long totalBytesExpectedToRead) {
float percentage = (totalBytesRead / (totalBytesExpectedToRead * 1.0f) * 100);
NSLog(@"Percentage: %f", percentage);
if (percentage != 100.0)
{
[SVProgressHUD showWithStatus:[NSString stringWithFormat:@"Downloading... %0.0f%%", percentage]];
}
}];
[operation start];
}
したがって、ダウンロードが完了すると、[SVProgressHUD showSuccessWithStatus:@"Done!"];
が呼び出されます。tableViewController
ただし、同じセルに戻ってクリックすると[SVProgressHUD showSuccessWithStatus:@"Done!"];
、画像がキャッシュされていても、が再度呼び出されます。画像がキャッシュされているかどうかを確認し、キャッシュされて[SVProgressHUD showSuccessWithStatus:@"Done!"];
いない場合にのみ呼び出すにはどうすればよいですか?