您可以想象这些关键字(下载图片uitableviewcell)将返回与“延迟加载”问题相关的结果,这不是我想知道的。
我想知道的是,在显示单元格之前是否有办法下载图像。
如果我们可以提前下载5或6个可见单元格的图像,并且在表格运行时提前下载5/6图像,那将会很棒
当然所有链接都存储在一个数组中,所以很容易提前获取它们
我正在使用AFNetworking进行所有网络操作
由于
答案 0 :(得分:0)
天真的解决方案
如果您的图像有缓存策略,那么您可以根据需要预取任意数量,并在下一次实际调用中,在单元格中加载图像,它将加载它(从缓存中)。这有点天真,因为您将所有内容都基于服务器在客户端使用缓存机制的谓词,以减少网络操作的数量(但情况并非总是如此)。
更好的解决方案
此外,您可以实现自己的数据结构(例如扩展NSMutableDictionary)来存储,处理图像并随时下载图像。例如,当您加载表视图时,您可以开始下载要显示的图像以及下一个单元格的更多图像。但是,正如@picciano所说,滚动表视图可能非常快,预取只是浪费你的时间。
<强>注释强>
只有当用户连接到高速网络时,这种预取才有意义。但是,如果用户连接到慢速网络,那么您将创建大量网络操作,这需要时间来完成(不是非常节省电池)。