有一些NSColor
初始化帮助程序,如controlColor()
,它们返回各种颜色的系统组件。码头和菜单栏有没有这样的东西?我无法看到一个名字突然冒出来。如果没有这样的助手,还有另一种获得颜色的方法吗?
我想将它用作我正在开发的实用程序应用程序的默认NSWindow
背景颜色,它将显示在一个小的无边框NSWindow
中。
他们都是由“将军”控制的。面板和系统偏好设置'如下图所示。
先谢谢。
答案 0 :(得分:3)
不,菜单栏和Dock背景外观不是NSColor
系统颜色。它们看起来很像你可以从NSVisualEffectView
获得的Dark Vibrant和Light Vibrant风格。
如果您想更改视图的外观以匹配“使用黑暗菜单栏和Dock”首选项的状态......那么,没有API,但您可以从存储位置读取该首选项。 (因为它不是API,需要注意的是:在以后的OS X版本中,不能保证首选项存储不会改变。)
在Swift中(为清晰起见分为几行):
let defaults = NSUserDefaults.standardUserDefaults()
let globalPrefs = defaults.persistentDomainForName(NSGlobalDomain)!
let interfaceStyle = globalPrefs["AppleInterfaceStyle"]
if interfaceStyle as! String == "Dark" {
// time to be all emo
}