【发布时间】:2011-03-17 14:38:14
【问题描述】:
我有一个自定义的NSCell(实际上是NSTextFieldCell 的子类),它既可用于独立编辑器,也可用于NSTableColumn(通过NSArrayController 绑定到Core Data)。当用户更改值时,我调用-[NSCell setObjectValue:] 来更新值(它是NSNumber)。这在独立编辑器中有效,因为完成后我手动更新其上的绑定。
[self setObjectValue:[NSNumber numberWithInt:newValue]];
当单元格位于NSTableView 中时,缺少该步骤(更新绑定字段) - 更新后的值会在用户编辑(使用鼠标跟踪)时显示,但一旦结束,值就会立即恢复为持久化的值。
NSTableColumn 绑定到 -[NSArrayController arrangedObjects] 的键。我是否缺少某种对“commitEditing”或“updateBinding”的调用?我在 NSCell 或 NSTableView 的文档中找不到任何有用的功能。
【问题讨论】:
标签: macos core-data cocoa-bindings nsarraycontroller nscell