【发布时间】:2011-05-10 09:51:11
【问题描述】:
我想为我的NSManagedObject 获取一组属性,以便我可以使用 KVO 导出它们。我可以手动创建一个数组,然后迭代它,但是,我想自动获取这个列表,然后迭代。
【问题讨论】:
标签: ios objective-c cocoa core-data key-value-observing
我想为我的NSManagedObject 获取一组属性,以便我可以使用 KVO 导出它们。我可以手动创建一个数组,然后迭代它,但是,我想自动获取这个列表,然后迭代。
【问题讨论】:
标签: ios objective-c cocoa core-data key-value-observing
一个 NSManagedObject 有一个与之关联的实体。使用NSEntityDescription 的-attributesByName 和-relationshipsByName。您将从这些方法中的每一个中得到一个字典。只需向听写者询问他们的-allKeys。
【讨论】:
谢谢约书亚。这是我使用的代码,以防有人想看一个困难的例子:
NSString *entityName = NSStringFromClass([myEntity class]);
NSEntityDescription *entityDescription = [self entityDescriptionWithEntityName:entityName];
NSDictionary *attributes = [entityDescription attributesByName];
NSArray *attributeNames = attributes.allKeys;
【讨论】: