我有一个NSArrayController绑定到NSUserDefaults控制器,在Interface Builder中将setSelectsInsertedObjects设置为YES,但是当我单击Add时,先前选择的对象将被取消选择,而不是选择新添加的对象。
我错过了什么?
答案 0 :(得分:3)
你是如何约束他们的?如果是通过NSArrayController的'content'绑定,那么我相信它会尝试将selectionIndexes绑定到同一个对象。这个类(NSIndexSet)不适用于NSUserDefaults(我不知道为什么,但我过去遇到了同样的问题 - 我认为它与它的对象生命周期有关;它被初始化为空,然后添加索引或者其他的东西)。 setSelectsInsertedObjects正在做的只是在添加新对象时自动更新selectionIndexes,并且基本上你的NSUserDefaults控制器搞乱了。我不确定它在哪里,但我想如果你在NSArrayController的绑定周围找到一个你会找到一个自动绑定到NSUserDefaults的selectionIndexes(或相关的东西);如果你取消选中,事情应该有效。
答案 1 :(得分:1)