使用CALayer修改NSButton的外观在macOS 10.12和10.10中的工作方式不同

时间:2016-12-17 16:22:49

标签: swift cocoa calayer layer nsbutton

我正在尝试在我的应用中更改NSButton的外观。按钮是" Square"和"瞬间推进"。

代码是:

let layer = CALayer()
toggleTimespanButton.wantsLayer = true
toggleTimespanButton.layerContentsRedrawPolicy = NSViewLayerContentsRedrawPolicy.onSetNeedsDisplay
layer.backgroundColor = NSColor.white.cgColor
layer.cornerRadius = (toggleTimespanButton.bounds.size.width)/2
layer.masksToBounds = true
layer.borderWidth = 1
layer.borderColor = appDelegate.mainColor.cgColor
toggleTimespanButton.layer = layer

按钮在macOS 10.12中看起来很好:

enter image description here

但在macOS 10.10中,按钮标题不可见。一切看起来和工作正常,包括按钮是白色和边框粉红色等。

但为什么按钮标题在macOS 10.10中不可见?

我试图逐个禁用所有行,只有当图层没有添加到按钮时文本才会重新出现...

0 个答案:

没有答案