如何修改NSButton的外观以创建切换效果

时间:2017-07-25 06:47:14

标签: macos cocoa nsbutton

如何修改NSButton的外观,我想创建一个类似于NSRoundRectBezelStyle但具有图像和自定义高度的切换按钮

如何更改背景颜色,悬停时颜色更改,单击时更改颜色,状态为ON或OFF时创建切换效果,创建类似于NSRoundRectBezelStyle的边框。现有的原生按钮没有UI UI的精确UI。

用户界面应如下所示,但我想在文字上方添加图片。

enter image description here

此Mac 按钮 - 悬停效果

桌面按钮 - 切换为开启效果

共享按钮 - 切换关闭效果

1 个答案:

答案 0 :(得分:0)

我想就是这样:

let button = NSButton(title: "Title", target: self, action: #selector(doSomething(_:)))
button.setButtonType(.pushOnPushOff)
button.bezelStyle = NSButton.BezelStyle.recessed
// the magic line
button.showsBorderOnlyWhileMouseInside = true