ios从Web服务器加载图像并在UITableViewCell上显示

时间:2012-09-24 13:25:39

标签: iphone ipad ios5

对于iPhone 5.0(ARC),我以json形式从服务器获取大量图像(图像url)和文本数据。我的要求是从服务器加载前五个图像,当用户向下滚动接下来的五个图像加载,依此类推。我需要在UITableViewCell中显示它。通过这样做,我可以减少网络呼叫并使设备上的应用程序更快。

目前,我正在使用后台线程来加载图片,但是它们会在后台持续加载。我不想这样做。

2 个答案:

答案 0 :(得分:1)

我强烈建议您使用AFNetworking框架(对于所有与网络相关的任务而言,这非常棒且完整)。

它附带UIImageView上的类别,可让您直接从UIImageView设置image的{​​{1}},在后台为您管理所有内容,例如下载图像或从缓存中提取图像,如果稍后更改NSURL以取消请求,则取消请求等。

然后在你的URL中,您可以简单地编写这种代码:

tableView:cellForRowAtIndexPath:

你已经完成了。即使滚动时[cell.imageView setImageWithURL:yourURL]; 的循环机制正在运行,它也会起作用,使用其他方法进行管理会非常麻烦。

答案 1 :(得分:0)

看看SDWebImage。这是一个非常简洁的库,可以异步下载图像并缓存它们。