Для cocoa у меня установлен NSTableView, который должен быть основан на представлении. Когда строка выбрана, текстовые поля меняют цвет на белый. Как сохранить его черным?
Я также должен отметить, что в элементе Highlight установлен список источников (он делает то же самое в Regular).
Невыбранная строка
Выбранная строка
Я надеялся на что-то похожее на конфигурацию состояния для iOS:
Это было предложено на WWDC 2011 Session 120, но оно немного задержалось, поэтому я не буду его использовать. Это может работать для кого-то еще.
- (void)tableViewSelectionDidChange:(NSNotification *)notification
{
[tableView enumerateAvailableRowViewsUsingBlock:^(NSTableRowView *rowView, NSInteger row){
NSTableCellView *cellView = [rowView viewAtColumn:0];
if(rowView.selected){
cellView.textField.font = [NSFont boldSystemFontOfSize:14];
}else{
cellView.textField.font = [NSFont systemFontOfSize:14];
}
}];
}