NSDictionaryController似乎没有观察到对内容字典的更改

时间:2009-10-20 17:47:00

标签: cocoa nsdictionary cocoa-bindings nstableview

我必须遗漏一些简单的东西,但是我在将tableView绑定到NSDictionaryController时遇到了一些麻烦。这是我目前计划的模型:

TableViewColumn --bindsTo - > DictionaryController.arrangedObjects。(值或键)                 --bindsTo - > someClass.someClassMember.aDictionary

我通过在init上向aDictionary添加一个条目来测试tableView,它正确显示。但是当另一个方法产生一个然后添加到一个字典的对象时,TableView似乎没有更新,甚至不知道aDictionary现在有两个条目。我已经尝试了所有我能想到的东西。我直接访问aDictionary ....我已经尝试过(在someClassMember中)[self aDictionary setValue:forKey:]和[self setValue:forKeyPath:@“aDictionary”]和类似的变体。键是一个字符串,所以它应该符合KVC / KVO,并且我在某些类会员中合成了@Dictionary。

我错过了什么?为什么不会在tableView中显示字典的新条目?

提前致谢

1 个答案:

答案 0 :(得分:2)

在添加新项目之前尝试[self willChangeValueForKey:@"aDictionary"];,之后在[self didChangeValueForKey:@"aDictionary"];

中尝试someClass