启动一个简单的iPhone应用程序时,我采用了一种直接的方法将XML摘录的“键/值”对转换为NSDictionary。问题是,我需要将曾经填充UITableView的那些NSDictionary实例转换为自定义类,因为它们需要行为和额外的复杂性。这里的问题是,现在为了实例化一个对象并用来自Web服务的键/值对填充其实例变量变得更加困难。我再也无法将其投入到遍历XML并使用KVC设置其实例变量的方法中。

还有什么其他解决方案?

最佳答案

只要您对变量进行适当的命名,您仍然可以在自定义类上使用键值编码方法。话虽这么说,但是当我使用XML时,由于要使用的数据源中的名称不符合键值编码,因此我通常最终会测试每个节点名称或创建键查找表。如果您可以控制数据源,则可以继续使用setValue:forKey:

如果您还没有的话,建议您阅读this guide有关键值编码的信息。这是 cocoa 中许多出色工具的基础。

10-05 20:24