如何检测 macOS 默认值和默认值之间的切换使用 Swift 3 的暗模式 [英] How to detect switch between macOS default & dark mode using Swift 3

查看:80
本文介绍了如何检测 macOS 默认值和默认值之间的切换使用 Swift 3 的暗模式的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想在用户从默认模式切换到暗模式时更改我的状态栏应用程序图标,反之亦然(使用 Swift 3).这是我目前所拥有的:

I want to change my status bar app icon when the user switches from default to dark mode and vice versa (using Swift 3). Here’s what i have so far:

func applicationDidFinishLaunching(_ aNotification: Notification) {
    DistributedNotificationCenter.default().addObserver(self, selector: #selector(darkModeChanged(sender:)), name: "AppleInterfaceThemeChangedNotification", object: nil)
}

...

func darkModeChanged(sender: NSNotification) {
    print("mode changed")
}

不幸的是,它不起作用.我做错了什么?

Unfortunately, it’s not working. What am I doing wrong?

推荐答案

我成功地使用了这个 Swift 3 语法:

I'm using this Swift 3 syntax successfully:

DistributedNotificationCenter.default.addObserver(self, selector: #selector(interfaceModeChanged(sender:)), name: NSNotification.Name(rawValue: "AppleInterfaceThemeChangedNotification"), object: nil)

func interfaceModeChanged(sender: NSNotification) {
  ...
}

这篇关于如何检测 macOS 默认值和默认值之间的切换使用 Swift 3 的暗模式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆