6

我在为10.10开发的NSPopover中有一个NSVisualEffectView

当子类化NSVisualEffectView以具有悬停背景颜色效果时,无边框按钮颜色似乎不同

灰盒

我尝试将backgroundColor按钮单元的设置为clearColor或与我在 NSVisualEffectView 中使用的相同drawRect:前者给出了错误的颜色(未填充蓝色),而后者仍然与错误的颜色相同。(其边界周围的灰色框)。

CALayer可以解决这个问题,但有没有办法不使用它?

有任何想法吗?

4

2 回答 2

3

经过多次试验和错误,这对我有用:

button.wantsLayer = true
button.layer?.backgroundColor = NSColor.clearColor().CGColor

我有一个 NSVisualEffectView 风格的 NSTableView。我创建了一个自定义 NSTableViewCell 类并将这些行放在它的 drawRect 方法中。

于 2016-04-05T21:29:46.550 回答
0

这已经开放了很长时间,但我自己只需要答案,也许其他人很高兴在这里找到这个答案,答案仅适用于 Mac OS 10.14 及更高版本

button.contentTintColor = .white

通过将 contetTintColor 设置为您可能需要的任何内容,它会出于某种原因删除背景颜色。

于 2020-11-22T15:18:06.390 回答