NSArrayController 的奇怪行为

Posted

技术标签:

【中文标题】NSArrayController 的奇怪行为【英文标题】:Odd behaviour of an NSArrayController 【发布时间】:2009-10-26 22:03:08 【问题描述】:

我有一个核心数据项目,其中一个 NSTableView 绑定到一个 NSArrayController。我有两个按钮,一个将对象添加到表中,一个从表中删除对象。 Add 方法使用一个自定义方法,它直接创建一个新的 Core Data 对象。 remove 方法使用 NSArrayController 的标准 Remove 方法。

我的问题是表格的选定对象似乎与 NSArrayController 的选定对象不对应。如果我记录所选对象,它似乎有所不同,并且 Remove 方法会按照对象的创建顺序删除对象,而不是删除所选对象。

供参考的表格和一些绑定如下:

桌子

http://emberapp.com/splash6/images/risk-engine-input-cells-table/sizes/m.png

NSArrayController 绑定

http://emberapp.com/splash6/images/nsarraycontroller-bindings/sizes/m.png

表格中单元格的绑定

http://emberapp.com/splash6/images/cell-bindings/sizes/m.png

有谁知道为什么会发生这种情况。这似乎是那些有一个非常简单的答案但我找不到的问题之一。

正如建议的那样,我尝试绑定选择索引,我通常不这样做,但这似乎没有任何区别。

【问题讨论】:

【参考方案1】:

你记得绑定选择索引吗?

【讨论】:

我通常不这样做,但在这种情况下尝试过这样做,似乎没有任何区别。【参考方案2】:

是否所有列都绑定到同一个数组控制器?

【讨论】:

以上是关于NSArrayController 的奇怪行为的主要内容,如果未能解决你的问题,请参考以下文章

NSArrayController 创建、修改然后选择一个新对象

python cookie的奇怪行为,无法设置cookie

Angular 2.0.0 Metadata_resolver 奇怪的行为

如何将 NSArrayController 的内容集绑定到多个 NSArrayController 选择?

两个 NSArrayController 和一个关系(CoreData)

NSTableView 绑定到 NSArrayController