检测 macOS 10.14 强调色何时发生变化

Detecting when macOS 10.14 accent color has changed

在 macOS 10.14 中,您可以通过收听以下通知来检测系统主题何时更改:

[NSDistributedNotificationCenter.defaultCenter addObserver: self
                                                  selector: @selector(OSThemeChanged:)
                                                      name: @"AppleInterfaceThemeChangedNotification"
                                                    object: nil];

但是当 Accent color 改变 (NSColor.controlAccentColor) 时它不会被触发。我有一张图片我想根据强调色修改,所以我想知道它什么时候会改变。

有人能解决这个问题吗?

AppleColorPreferencesChangedNotification 我相信密钥应该有效:

    [[NSDistributedNotificationCenter defaultCenter] addObserver:self
                                                        selector:@selector(accentColorChanged:)
                                                            name:@"AppleColorPreferencesChangedNotification"
                                                          object:nil];

在更改首选项并关闭系统首选项常规 window 之前,不会发送通知。

虽然找不到 link 的文档。