Я пробовал множество комбинаций предложенных вариантов из других сообщений, но я не могу получить NSTableView на основе ячеек, заполненный нередактируемым NSTextFieldCell, чтобы выбрать ЯЧЕЙКУ, а не строку.
Я пробовал:
[[col dataCell] setEditable:NO];
[[col dataCell] setSelectable:YES];
[col setEditable:YES];
и попробовал делегатов:
- (BOOL)tableView:(NSTableView *)aTableView shouldSelectRow:(NSInteger)rowIndex;
и
- (BOOL)shouldFocusCell:(NSCell *)cell atColumn:(NSInteger)column row:(NSInteger)row;
Причина разрешения выбора ячейки (а не редактирования текста) заключается в том, что я разрешаю пользователю дважды щелкнуть ячейку для выполнения функции навигации. Двойной щелчок отлично работает, но пользователь должен видеть, что одиночный щелчок (или даже первый щелчок) выделяет ячейку. Но все, что я получаю, это выбранная строка, и даже если делегат запрещает это, выбор ячейки отсутствует.
Единственный способ сделать это, чтобы заставить ячейку рисовать свой фон в цвете выделения выделения? (кажется хакерским).
Кстати, выбор COLUMN также разрешен. Это в настоящее время работает.
У кого-нибудь есть опыт решения этой проблемы? Или какие-то мудрые догадки?
Стивен