奇怪的绑定问题

时间:2008-11-12 01:36:18

标签: cocoa cocoa-bindings key-value-coding

我正在尝试使用带有绑定的浏览器视图来表示一些数据,我收到一条错误消息:

2008-11-11 17:22:28.636 BrowserViewTest[18269:813] Cocoa Bindings: Error accessing value
 for key path arrangedObjects.projects of object <NSTreeController: 0x1321e0>[object class: BillingCode] 
(from bound object <NSBrowser: 0x126930> with object ID 0 in Nib named MainMenu.nib): 
[<_NSControllerTreeProxy 0x128630> valueForUndefinedKey:]: this class is not key 
value coding-compliant for the key displayString.
2008-11-11 17:22:28.638 BrowserViewTest[18269:813] Brow view cont awakeFromNib
2008-11-11 17:22:28.639 BrowserViewTest[18269:813] project count: 0

如NSLog输出所示,甚至在我的app控制器中调用awakeFromNib之前就会发生这种情况,即使我知道BillingCode与displayString符合KVC。

它似乎与我的Tree Controller-&gt; Attributes-&gt; Object Controller下的“Class”的值设置有关,就好像我更改了该类的名称,错误消息中的名称随之更改。奇怪的是,据我所知,此时内容数组中不应该有任何对象,因为我不会在awakeFromNib被调用之前添加它们。

1 个答案:

答案 0 :(得分:0)

它几乎听起来像你的字典中当前的对象类型不是你期望的类型,所以运行时无法获得关键displayString的值我试图找出一个对象是什么时候添加到你的字典中,然后从那里找出为什么它不是你期望的类型。