У меня есть пользовательский NSCell
(на самом деле подкласс NSTextFieldCell
), который используется как в автономном редакторе, так и в NSTableColumn
(привязанный к Core Data через NSArrayController
). Когда пользователь изменяет значение, я вызываю -[NSCell setObjectValue:]
для обновления значения (это NSNumber
). Это работает в автономном редакторе, так как, когда это будет сделано, я вручную обновлю привязку к нему.
[self setObjectValue:[NSNumber numberWithInt:newValue]];
Этот шаг (обновление связанного поля) отсутствует, когда ячейка находится в NSTableView
— обновленное значение отображается во время редактирования пользователем (с отслеживанием мыши), но как только это заканчивается, значение возвращается к сохраненному значению.
NSTableColumn
привязан к ключу -[NSArrayController arrangedObjects]
. Есть ли какой-то вызов «commitEditing» или «updateBinding», который мне не хватает? Я не смог найти никаких полезных функций в документации для NSCell
или NSTableView
.