Ответ 1
Я думаю, вам нужно будет использовать TableViewDelegate и реализовать
- (NSIndexSet *)tableView:(NSTableView *)tableView
selectionIndexesForProposedSelection:(NSIndexSet *)proposedSelectionIndexes
У меня есть NSTableView
, и я хочу отключить выбор строки.
Столбцы табличного представления привязаны к NSArrayController
, а содержимое массива отображается в виде таблицы.
Как это сделать, просто используя bindings
?
Я думаю, вам нужно будет использовать TableViewDelegate и реализовать
- (NSIndexSet *)tableView:(NSTableView *)tableView
selectionIndexesForProposedSelection:(NSIndexSet *)proposedSelectionIndexes
Я думаю,
- (BOOL)selectionShouldChangeInTableView:(NSTableView *)aTableView
{
return NO;
}
лучше, чем
- (NSIndexSet *)tableView:(NSTableView *)tableView selectionIndexesForProposedSelection:(NSIndexSet *)proposedSelectionIndexes
Пока работают предыдущие ответы, это еще один вариант, который я предпочитаю использовать:
- (BOOL)tableView:(NSTableView *)aTableView shouldSelectRow:(NSInteger)rowIndex
{
return NO;
}
В качестве примечания для потомков...
Если вы объявляете selectIndexesForProposedSelection, то функция shouldTelectRow будет проигнорирована. На всякий случай, когда вам интересно, как я сделал, почему мои изменения в shouldSelectRow не повлияли...