对于 iPhone 5.0 (ARC),我以 json 形式从服务器获取大量图像(图像 url)和文本数据。我的要求是从服务器加载前五张图片,当用户向下滚动时加载接下来的五张图片,依此类推。我需要在 UITableViewCell 中显示它。通过这样做,我可以减少网络调用并使应用程序在设备上运行得更快。
目前,我正在使用后台线程来加载图像,但它们会在后台持续加载。我不想这样做。
我强烈建议您使用该AFNetworking
框架(对于所有与网络相关的任务来说,它非常棒且完整)。
它带有一个类别UIImageView
,允许您直接从设置UIImageView
,在后台为您管理所有内容,例如下载图像或从其缓存中获取图像,如果您更改后者则取消请求以避免无用的请求,等等image
NSURL
URL
然后在你的tableView:cellForRowAtIndexPath:
你可以简单地编写这种代码:
[cell.imageView setImageWithURL:yourURL];
你完成了。即使滚动时的回收机制在起作用,它也会起作用UITableView
,使用其他方法管理起来会很痛苦。
看看SDWebImage。这是一个非常简洁的库,可以异步下载图像并缓存它们。