我正在开发一个MAC应用程序并包含tableView。 想要将所选行的颜色更改为黄色。
答案 0 :(得分:14)
在表格视图中设置此项:
[yourtableview setSelectionHighlightStyle:NSTableViewSelectionHighlightStyleNone];
并将以下NSTableView的委托方法实现为:
- (void)tableView:(NSTableView *)aTableView willDisplayCell:(id)aCell forTableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex
{
if ([[aTableView selectedRowIndexes] containsIndex:rowIndex])
{
[aCell setBackgroundColor: [NSColor yellowColor]];
}
else
{
[aCell setBackgroundColor: [NSColor whiteColor]];
}
[aCell setDrawsBackground:YES];
}
答案 1 :(得分:0)
如果您只想突出显示列的单个单元格,请执行以下操作: -
- (void)tableView:(NSTableView *)tableView
willDisplayCell:(id)cell
forTableColumn:(NSTableColumn *)tableColumn
row:(NSInteger)row
{
if ([[tableColumn identifier] isEqualToString:@"yourColumm"])
{
[cell setBackgroundColor:[NSColor yelloColor]];
}
}