当源列表失去焦点时禁用颜色更改

时间:2010-04-06 00:59:03

标签: cocoa nstableview

在源列表中选择某个项目时,它将以蓝色突出显示。但是,当选择窗口上的其他元素时,由于源列表不再聚焦,突出显示变为浅蓝色。

我想改变行为,因此项目总是深蓝色,与Finder中看到的行为相同。

1 个答案:

答案 0 :(得分:5)

似乎Finder的源列表永远不会成为第一个响应者,所以,我想第一步是子类化你的表视图或大纲视图,并实现 - (BOOL)acceptFirstResponder方法

- (BOOL)acceptsFirstResponder
{
    return NO;
}

它将使您的源列表的选择始终保持浅蓝色,并且您可以使用一些未记录的方法(如_highlightColorForCell)来更改突出显示颜色。