OStack程序员社区-中国程序员成长平台

标题: ios - 预加载和缓存图像的最佳实践 (AFNetworking) [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 03:38
标题: ios - 预加载和缓存图像的最佳实践 (AFNetworking)

我想知道这个非常常见的操作的最佳做​​法是什么: 假设我有一个 Collection View ,并且这个 Collection View 的每个单元格都有一个 imageView,它接收一个图像的 url。

图像很大,所以我想提前预加载所有图像(或者说提前 5 个)。 我正在使用 AFNetworking imageView 类别。

这就是我所做的 - 创建一个临时 UIImageView 并在每次迭代时为其设置 url,但它似乎无法正常工作。 (图像仍然需要时间才能显示,而我希望它是即时的,如果我关闭互联网连接,图像不会从缓存中加载)。

- (void)preloadGalleryImages {

for (GalleryItem *item in _galleryItems) {
    UIImageView *tempImageView = [[UIImageView alloc] init];
        [tempImageView setImageWithURL:item.imageURL placeholderImage:IMAGE(@"placegolder")];
    }
}

}

谢谢,



Best Answer-推荐答案


有一种在 Collection View 中预热图像的通用方法,该方法已在 Apple PhotosKit samples 之一中实现。 .您可以预测用户操作并获取可能很快出现在显示器上的图像(靠近视口(viewport))。此功能在 Nuke 中实现和 DFImageManager .

关于ios - 预加载和缓存图像的最佳实践 (AFNetworking),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27077844/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4