如何将标题栏/工具栏和NSButtons更改为深色主题?

4
我正在为macOS(OS X)的一个项目工作,希望将窗口设置为黑色主题,而不是默认的浅色主题,该主题具有浅灰色标题栏/工具栏和白色按钮。
如何将标题栏/工具栏更改为黑色,按钮更改为深灰色?
我正在使用Swift进行编码,但Objective-C的答案也会很有帮助。我已经附上了我想让它看起来像什么的图片:

What I want it to look like

2个回答

6

好的,我找到了解决方案。

要将 WindowController 更改为暗色主题,请在 windowDidLoad() 函数中键入以下代码:

window?.appearance = NSAppearance(named: NSAppearanceNameVibrantDark)

这会使标题栏/工具栏的颜色变为黑色,按钮的颜色变为深灰色。
另外,为了使标题栏和工具栏合并成一个,如上图所示,请在windowDidLoad()函数中输入以下代码以及上面的代码:
window?.titleVisibility = .hidden

这是应用程序运行时窗口的图像:暗色主题窗口

希望这能帮助那些和我一样想知道如何做到这一点的人。


2

如果在没有直接窗口出口的视图控制器中调用此函数:

override func viewDidAppear() {
    super.viewDidAppear()
    self.view.window?.appearance = NSAppearance(named: NSAppearance.Name.vibrantDark)
}

请注意,必须从viewDidAppear()而不是viewDidLoad()调用,因为那里的窗口仍然为空。
编辑:已更新至Swift 4

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接