我的iphone应用程序中设置了UITableview。目前,每行都填充了NSMutableArray中的项目。该数组从mysql数据库获取数据,我必须自行更新以更新tableview的内容。
我试图通过让它从html表中获取内容并使用它而不是将数据库用作数据源来使这个tableview的填充更加自动化和动态化。这是否可能,如果是,是否有任何建议的方法?
它抓取内容的网站对于不同的视图也会有所不同,因此我无法为特定网站定义一组解析规则。
提前致谢。
答案 0 :(得分:1)
我可以想到几种方法将数据从HTML获取到NSMutableArray,然后可以在UITableView中显示。
一种方法是将HTML放入UIWebView,然后使用stringByEvaluatingJavaScriptFromString:
方法从HTML表中提取数据。由于此方法返回字符串而不是数组,因此您可能还需要a JSON library将字符串转换为数组。如果您无论如何都要显示HTML,并希望尽可能少地编写代码,这可能是一个很好的方法。
如果您不想显示HTML,那么您可能更喜欢使用内置于iOS的libxml2直接解析它。然后,您可以使用XPath查询从HTML表中提取数据。 Cocoa with Love网站上有一篇很好的文章解释了如何在iOS上使用libxml2。这种方法可能更有效,但需要更多代码。