当我启动一个简单的iPhone应用程序时,我有一个直接的方法将XML摘录的键/值对转换为NSDictionary.问题是,我需要将那些曾经将我的UITableView填充的NSDictionary实例转换为自定义类,因为它们需要行为和额外的复杂性.这里的问题是,现在为了让我实例化一个对象并用Web服务中的键/值对填充其实例变量变得更加困难.我不能再把它扔进一个迭代XML并使用KVC设置其实例变量的方法.
那里有什么样的其他解决方案?
您仍然可以在自定义类上使用键值编码方法,只要您适当地命名变量就没有区别了.尽管如此,当我使用XML时,我通常最终会测试每个节点名称或创建密钥查找表,因为我正在使用的数据源中的名称不符合键值编码.如果您可以控制数据源,则可以继续使用setValue:forKey:
.
如果您还没有,我建议您阅读有关键值编码的指南.它是Cocoa中许多优秀工具的基础.