由于在异步图像下载期间重新加载,UICollectionView在不同单元格中加载异步图像

时间:2014-04-07 00:31:27

标签: ios objective-c asynchronous uicollectionview grand-central-dispatch

加载我的UICollectionView单元格时,我调用了一个下载图像异步的方法。

在下载过程中,重新加载了我的集合视图,因此在下载异步图像时,它会设置在两个不同的单元格中。

我还尝试使用NSOperationQueue dealloc我在cancelAllOperations:拨打{{1}},但这不起作用。

取消此下载的最佳方法是什么,有人可以提供一些示例代码吗?

感谢。

1 个答案:

答案 0 :(得分:0)

我认为最好的做法是在需要图片时缓慢启动请求,缓存结果,并在请求完成时对集合的状态没有任何期望。

重新加载集合不是针对特定单元格中的图像请求的无效事件。滚动即可,但用户可能会向后滚动。因此,请求,并在请求缓存的完成块中,将结果和reloadItemsAtIndexPaths:放在与请求关联的索引路径上。

My answer here,提供工作代码。