Флажок в столбце таблицы не регистрирует клик
У меня есть табличное представление, к которому я добавляю столбцы динамически. Это должно быть сделано так, потому что я не могу предсказать, сколько или какие столбцы мне понадобятся.
Некоторые столбцы являются флажками, но я не могу нажать на них, когда я запускаю свое приложение. Столбец и флажок установлены для редактирования, но если я нажму на флажок, флажок не будет установлен. Я что-то пропустил?
Обновить
Как я (пытаюсь) установить состояние на флажок:
- (void)tableView:(NSTableView *)theTableView
setObjectValue:(id)theObject
forTableColumn:(NSTableColumn *)theColumn
row:(int)rowIndex
{
if (theTableView == resultsTableView) {
if ([[theColumn identifier] isEqualToString:CHCheckBoxColumnIdentifier]) {
NSInteger state = [[theColumn dataCell] state];
if (state == NSOnState) {
[[theColumn dataCell] setState:NSOffState];
} else {
[[theColumn dataCell] setState:NSOnState];
}
/*
NSLog(@"%@", theObject);
NSLog(@"%@", theColumn);
NSLog(@"%i", rowIndex);
*/
}
}
}
1 ответ
Связаны ли ваши столбцы с контроллером или вы используете протокол NSTableDataSource? Я подозреваю последнее, но вам нужно будет уточнить.
Исходя из моего предположения: нажатие на флажок обрабатывается так же, как и все остальное в -tableView:setObjectValue:forTableColumn:row:
метод. Ваш объект будет в состоянии кнопки...