如何在MacOS中强制视图控制器使用亮或暗模式?

时间:2020-04-28 17:04:32

标签: swift macos

我知道有一种方法可以通过编程方式覆盖iOS中的界面样式,如下所示:

docker-squash

但是,我尝试在macOS中搜索类似内容,但找不到。有没有办法在macOS中实现这一目标?

2 个答案:

答案 0 :(得分:1)

可以通过

完成
public protocol NSAppearanceCustomization : NSObjectProtocol {
    @available(OSX 10.9, *)
    var appearance: NSAppearance? { get set }

NSApplicationNSWindowNSView符合此协议,因此您可以像使用它一样

window.appearance = NSAppearance(named: .aqua)
window.makeKeyAndOrderFront(nil)

答案 1 :(得分:1)

我终于找到了。您可以在macOS中执行以下操作:

class ViewController: NSViewController { 

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do view setup here.
        view.appearance = NSAppearance(named: .darkAqua)

    }

}