2013-01-10 34 views
2

我需要从网站下载图像并将其显示在(?)多个UIImageView上。下载多个图像并显示多个UIImageView的最佳方式是什么?

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

+0

检出SQLite。这是iOS设备和CoreData使用的数据库。 NSPredicates是可以用于类似SQL的查询的对象。去年我试图做同样的事情,但那时候我的能力有点不足,但这应该会帮助你开始。我也相信你会使用JSON。如果您是会员,Lynda.com会为您提供此课程。 – Matt

回答

1

让我们来看看,你必须从网站获取图像的选项:

  1. 撷取HTML和解析HTML找到(在iPhone)的图像。然后下载图像。

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

如果选择选项(1)你需要NSURLConnection异步获取数据(不阻塞UI)。我还会使用TFHpple来使用xpath查询解析HTML,请参阅this教程以获取帮助。最后,要使用可使用SDWebImage的URL访问图像,SDWebimage还提供了缓存功能,以便您的应用不会多次下载相同的图像。

使用选项(1)的不好的一面是,在网站上的任何改变您取得的图像将打破你的应用程序,你需要为了修复它发出一个更新的应用程序商店。

如果选择选项(2),你的应用程序会更容易解决,如果该网站的变化,你只需要修改你的脚本。

如果您选择去(2)你可能需要NSURLConnectionNSXMLParser(或第三方XML解析库),并下载我再次建议更换SDWebImage图像。我还建议使用JSON(和NSJSONSerialization)而不是XML,只是因为我觉得JSON更易于解析。

+0

感谢您的时间和真棒回复。 – Lima

0

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

相关问题