我目前正在做一个项目,我需要在 UITableView 上显示大图像,这对于很多开发人员来说是非常常见的问题,并且通过他们的线程学习我达到了以下过程:
注意:我指的大图像,它们都有 300x300px(600x600px,视网膜)和大约 200kb,JPEG
- 创建一个 NSOperationQueue;
- 异步下载图片(每张图片有600x600px,对应@2x图片);
- 调整大小并创建非视网膜图像(300x300px 图像);
- 解压两张图片;
- 将所有图像存储在 NSCache 上;
在所有这些程序完成后,我在主线程上更新我的 UITableView。我正在使用 UITableViewCell 子类来绘制我所有需要的内容(如 Apple 的示例代码所示)。主要问题是我对第 4 步感到困惑(解压缩图像),我的疑问:
注意:我目前将解压缩的图像存储在 NSCache 上。
- 我应该解压缩图像并将其存储为 UIImage 还是 NSData?
- 我如何存储解压缩的图像?(NSCache,NSMutableArray ...)
- 将解压缩的图像传递给我的 UITableViewCell 子类的最佳方法是什么?
注意:我正在使用此处提供的解压缩代码:链接