如何进入NSManagedObject; 访问个人属性

Oh *_*Boy 2 iphone objective-c

NSManagedObject *entryObj = [self.fetchedResultsController
                         objectAtIndexPath:indexPath];
Run Code Online (Sandbox Code Playgroud)

entryObj由四个String属性组成.

如果我NSLog entryObj,我得到了我想要的信息.我无法弄清楚如何单独访问每个属性.我读了一篇类似的帖子,解决方案是调用"实体".我无法弄清楚如何使用"实体"来访问特定属性.

有任何想法吗?参考文献?教程?

提前致谢.

Mik*_*ler 5

托管对象上的属性符合KVC/KVO,因此您可以通过以下方式访问它们:

[entryObj valueForKey:@"name"]
Run Code Online (Sandbox Code Playgroud)

或者,您可以生成具有真实属性的自定义Core Data类来访问这些值.有关更多信息,请参阅此文档.Xcode核心数据建模工具可以为您生成这些类.打开模型时,选择"文件 - >新文件",您应该看到"托管对象类"项.选择此选项并选择要为其生成类的实体.

完成此操作并且核心数据实体已正确设置其类名后,您只需将NSManagedObject强制转换为新类的实例并访问其属性,即

MyObject *entryObj = (MyObject *) [self.fetchedResultsController
    objectAtIndexPath:indexPath];
NSLog(@"Property is %@", entryObj.whatever);
Run Code Online (Sandbox Code Playgroud)