【问题标题】:Reusing an UIImage object in an UIImageView that is retrieved with "setImageWithURL"在使用“setImageWithURL”检索的 UIImageView 中重用 UIImage 对象
【发布时间】:2015-02-06 11:12:31
【问题描述】:

我有一个由 Youtube 缩略图单元格组成的表格视图,这些单元格是在 AFNetworking 的 setImageWithURL 方法的帮助下检索的。那么如何将这些单元格中的缩略图重新使用到另一个视图中呢?

提前致谢。

【问题讨论】:

    标签: ios objective-c iphone uiimage afnetworking


    【解决方案1】:

    UIImageView+AFNetworking 中,一次image downloadedurl 使用AFImageCache (NSCache) 得到cached

    这里的技巧是使用same urldownload image 但它会not 选择download 但会为您提供cached image

    编辑: 看看这个UIImageView+AFNetworking's setImageWithURLRequest:placeholderImage:success:failure:

    UIImage *cachedImage = [[[self class] sharedImageCache] cachedImageForRequest:urlRequest];
    if (cachedImage) 
    {
      //provide cache image
    
    } 
    else 
    {
      //download new image from url
    
    }
    

    【讨论】:

    • 谢谢。这就是我需要的。我会投票并检查这个作为答案。再次感谢。
    【解决方案2】:

    您可以从UIImageView 获取图像实例的引用。

    UIImage *imageToReuse = cell.imageView.image
    

    查看UIImagView 文档。

    但更好的选择是使用 AFNetworking 下载图像,将它们放入缓存中,例如使用 NSCache,然后通过它获取它们。这对我来说似乎是一种更清洁的方法,然后将它们从单元中提取出来。这些链接可能在这方面有用:

    【讨论】:

    • 嗯,是的。我确实在项目中使用了 AFNetworking。只是我忘记在原始问题中使用代码标签突出显示它,所以您可能错过了它。我的错。问题是,如果我使用上面的代码,我会不会得到与从网上检索到的不同的图像参考?
    猜你喜欢
    • 1970-01-01
    • 2014-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-14
    • 1970-01-01
    • 2013-10-14
    • 1970-01-01
    相关资源
    最近更新 更多