NSTableview中所选行的标签颜色

时间:2012-07-24 04:01:33

标签: cocoa nstableview nstableviewcell

我在基于视图的NSTableRowView中将NSTableView子类化,将选择颜色更改为浅蓝色而不是默认颜色。

不幸的是,当我选择行时,我的自定义单元格中的标签和文本字段的颜色变为白色且无法读取。

如何防止文字在选择时改变颜色?

找到解决方案:

我所要做的只是在我的自定义-setBackgroundStyle:中实施NSTableCellView,然后在我想要保持黑暗的所有控件的setBackgroundStyle:NSBackgroundStyleLight上调用NSCell选择。

3 个答案:

答案 0 :(得分:1)

您需要make a custom NSCell

答案 1 :(得分:1)

好的我明白了。

我所要做的就是在我的自定义NSTableCellView中实现-setBackgroundStyle:在NSCell上调用我想要在选择时保持黑暗的所有控件的setBackgroundStyle:NSBackgroundStyleLight。

答案 2 :(得分:0)

您是如何更改选择颜色的?听起来这可能是由于您在现有图层的顶部添加了子视图或子图层(可能是对于cell.selectedBackgroundView?)。如果您有任何insertSublayer或subView调用,请确保在atIndex:0。

执行它们