下载多个图像并显示多个UIImageView的最佳方法是什么?

时间:2013-01-10 17:05:14

标签: iphone objective-c xcode image

我需要从网站下载图像并将其显示在(?)多个UIImageView上。

也许我会编写一个php来“读取”目录并搜索图像,编写XML文件并将其用作媒介。但我不确定这是不是最好的方式。

2 个答案:

答案 0 :(得分:1)

让我们看一下从网站上获取图片的选项:

  1. 获取HTML并解析HTML以查找图像(在iPhone上)。然后下载图像。

  2. 编写一个脚本(可能是PHP),将所有图像链接写入XML文件(或JSON),然后使用所有链接获取脚本的输出。

  3. 如果选择选项(1),则需要NSURLConnection异步获取数据(不阻止UI)。我还会使用TFHpple使用xpath查询来解析HTML,请参阅this教程以获取帮助。最后,使用他们的URL获取图像,您可以使用SDWebImage,SDWebimage也提供缓存,这样您的应用就不会多次下载相同的图像。

    使用选项(1)的不好的一面是,您从中获取图像的网站中的任何更改都将破坏您的应用,您需要向应用商店发布更新才能修复它。 / p>

    如果选择选项(2),如果网站发生变化,您的应用将更容易修复,您只需要修改脚本。

    如果你选择选项(2),你可能需要NSURLConnectionNSXMLParser(或第三方XML解析库)并下载图像我会再次推荐SDWebImage 。我还建议使用JSON(和NSJSONSerialization)而不是XML,因为我发现JSON更容易解析。

答案 1 :(得分:0)

是的,如果您编写一些PHP脚本来获取图像列表(图像URL列表),那将是非常好的。 获得此类网址后,您可以异步下载并在图像视图中显示它们。查看here这样的异步图像视图实现