Предполагая, что в вашей таблице есть NSTextFieldCell (для других ячеек настройка цвета текста может отличаться), вы можете добиться этого путем реализации метода делегата NSTableView .
Сначала вы должны определить делегата для NSTableView , либо в Интерфейсном Разработчике, либо в вашем коде. Например, это может быть контроллер вашего приложения.
Затем просто реализуйте следующий метод:
- (void)tableView:(NSTableView *)aTableView willDisplayCell:(id)aCell forTableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex {
NSTextFieldCell *cell = aCell;
if (...) {
[cell setTextColor:[NSColor greenColor]];
} else if (...) {
[cell setTextColor:[NSColor redColor]];
} else {
[cell setTextColor:[NSColor blackColor]];
}
}
Каждый раз, когда NSTableView будет рисовать ячейку, у вас есть возможность изменить ее, прежде чем она будет нарисована.
Дополнительные сведения см. На странице документации NSTableViewDelegate .