2

我正在使用基于视图的 NSOutlineView 和两个不同的视图(两个视图都是 的自定义子类NSTableCellView)。在顶层视图中,我显示一个带有计数器的徽章。计数器指示较低级别的条目数。按照Apple 的 SidebarDemo项目,计数器实现为圆角矩形 NSButton 。

正如您从图像中看到的那样,选择单元格时按钮的行为不是您所期望的行为。我的按钮变成黑色,而在 Apple 的示例中它变成白色。我已经找到了将按钮的这种特定行为设置为该方法的 setHighlightsBy方法:

[[self.button cell] setHighlightsBy: 0];

awakeFromNib我在自定义单元格类的方法中使用了上述内容。同样awakeFromNib,我还设置了按钮的边框:

[[self.button cell] setBezelStyle: NSInlineBezelStyle];

边框样式效果很好,但突出显示似乎被忽略了。

我可以提供的更多信息:大纲视图使用绑定来获取其内容,其突出显示模式设置为“源列表”。

为什么我的突出显示被忽略?

在此处输入图像描述

在此处输入图像描述

4

2 回答 2

1

您的按钮是否在 IB 中设置(如在演示项目中)?如果是这样,您是否在属性检查器的控制部分中选中了“启用”框?如果我取消选中该框,我会得到您所看到的行为。

于 2012-05-06T15:33:57.543 回答
0

感谢@rdelmar 在他的回答中提出的建议,我找到了所描述行为的原因。该按钮使用“参数”绑定检查器绑定到单元格视图。

在此处输入图像描述

其中一项设置是“有条件地启用”,它已启用,显然会导致我的按钮自动禁用。禁用此设置后,问题就会消失。

于 2012-05-06T18:11:01.583 回答