0

我有一个NSTableCellView基于视图的视图NSTableView,它显示属性文本。所以显示的字有一些是红色的,一些是蓝色的,一些是粗体的,一些是正常的。

该单元格具有白色背景,但是一旦用户单击其中一个单元格,我想以不同的背景颜色显示它,因此需要将所有文本设置为该状态的白色。

这个问题最优雅的解决方案是什么?

我知道我可以再次将文本设置为普通文本,而不是选择时的属性文本,如果未选择,则设置为属性文本。但是使用粗体和普通字体会有点棘手。

这个问题有更优雅的解决方案吗?

4

1 回答 1

0

我不熟悉 NSTableViewDelegate 但在 UITableViewDelegate 你有:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath

在 NSTableViewDelegate 中找到替代方法并从 indexPath 创建一个单元格:

UITableViewCell *cell = tableView cellForRowAtIndexPath:indexPath]; 

然后改变它的背景

cell.backgroundColor = [UIColor redColor];

希望这可以帮助!

于 2014-10-24T13:10:17.543 回答