我在这里有一个非常简单的设置,Xcode 给了我一个无注释的红色“!” 在界面生成器中标记。
从基于核心数据的文档模板开始。文档 xib 有一个 NSObjectController 实例,其托管对象上下文绑定到文件的所有者(我的 NSPersistentDocument 子类)。存在一个 NSTextField,我想将其值绑定到 NSObjectController ......这就是问题所在。
我为“模型键路径”键入“标题”,因为这是我的 NSManagedObject 的正确属性,它应该出现在文本字段中。当我单击空的 Controller Key 字段时,自动完成奇怪地建议了仅适用于NSArrayController的字段:
每当我尝试键入“内容”作为控制器键(因为这是 NSObjectController 的正确属性)然后点击 Tab/Return/whatever 时,“内容”会向下移动到模型键路径,如下所示:
这个红色感叹号是干什么用的?当我将“Controller Key”留空并将“Model Key Path”留为 content.title 时,该应用程序可以正常工作。绑定是正确的,并反映了我的 NSManagedObject 的“标题”属性。我绝对确定“对象控制器”是 NSObjectController 的一个实例。