Здесь методы делегата - ваш друг, в частности
- (NSCell *)outlineView:(NSOutlineView *)outlineView dataCellForTableColumn:(NSTableColumn *)tableColumn item:(id)item
Это будет вызвано до того, как каждая ячейка будет нарисована в виде структуры. Это дает вам возможность указать, какую ячейку следует использовать для данной комбинации строки / столбца. Вы можете вернуть NSButtonCell
, настроенный как флажок для дочерних элементов, и вы можете вернуть пустое NSCell
.
Для всех остальных столбцов документация рекомендует просто возвращать [tableColumn dataCellForRow:row]
.