Получение информации об объекте в willDisplayCell, когда NSTableView использует привязки - PullRequest
0 голосов
/ 16 ноября 2011

У меня есть таблица, которая использует привязки для получения данных таблицы. Я также использую willDisplayCell для настройки конкретной ячейки при ее отображении. У меня вопрос, как мне получить значение ячейки, на которую ссылается метод willDisplayCell? Я не хочу запрашивать объект контроллера, так как я использую привязки, а не источник данных. Есть ли что-то в NSTableColumn или NSTableView, что мне нужно вызвать, чтобы получить значение?

1 Ответ

2 голосов
/ 16 ноября 2011

Нет ничего плохого в том, чтобы смешивать подходы источника данных и привязок. Фактически, документация упоминает, что оба могут быть смешаны для большего контроля в сложных ситуациях. Это делается постоянно, поэтому не думайте, что вы делаете что-то не так.

Кроме того, точка порядка: метод -tableView:willDisplayCell:forTableColumn:row: является частью протокола NSTableViewDelegate, а не протокола NSTableViewDataSource, поэтому он еще менее "грязен", чем вы думаете. : -)

В этой ситуации правильный способ состоит в том, чтобы создать выход для вашего контроллера массива (чтобы вы могли сообщать об этом) и запросить его для объекта в его -arrangedObjects, индекс которого соответствует запрошенной строке. Любым другим способом, и вы боретесь с рамками.

...