通过afnetworking下载图像时重新加载UITableView

时间:2013-06-19 10:28:07

标签: uitableview uiimage afnetworking

在我的cellForRowAtIndexPath方法中我有一些代码可以通过UIImageView + AFNetworking类别异步下载图像 但据我所知,每当我将表格滚动到单元格时,每次启动图像下载时都会调用cellForRowAtIndexPath方法。我可以缓存图像或细胞或类似的东西吗?

- (UITableViewCell *) tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    UITableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    //some code here
    [imageView setImageWithURL: myURL placeholderImage:[UIImage imageNamed:@"placeholder"]];
    //some other code here
    return cell;
}

1 个答案:

答案 0 :(得分:4)

UIImageView+AFNetworking会使用AFImageCacheNSCache子类)自动缓存您的图片,因此无需下载两次。

当一个单元格滚动回到视图时,只要URL相同,它就会使用缓存的图像而不是进行网络调用。

如果您将定期使用此类别的实现源,则可能对您有用。 source code can be found here