MacOS Изменить значок меню с помощью Swift 4 - PullRequest
0 голосов
/ 12 октября 2018

С новым режимом Dark в MacOS Mojave я бы хотел изменить значок меню в моем приложении.По умолчанию это белый черный медведь, и вместо того, чтобы просто инвертировать цвета, я бы хотел использовать иконку дремлющего медведя.

У меня есть весь мой код, который устанавливает иконку меню в AppDelegate вapplicationDidFinishLaunching.Итак, мой вопрос: есть ли способ проверить, был ли активирован темный режим, а затем изменить значок, используя swift 4?

Я попытался:

var inDarkMode: Bool {
  let mode = UserDefaults.standard.string(forKey: "AppleInterfaceStyle")
  return mode == "Dark"
}

, а затем оператор if вокруг

button.image = NSImage(named: NSImage.Name(rawValue: "StatusBarButtonImage"))

но поскольку код находится в applicationDidFinishLaunching, это будет проверено только один раз.

Любая помощь очень ценится.

1 Ответ

0 голосов
/ 04 мая 2019

Как отметил Лео в комментариях, Документы Apple четко объясняют процесс:

  1. откройте каталог активов и добавьте новый актив изображения.
  2. в правом меню нажмите на раскрывающееся меню Внешний вид :

enter image description here

Это должно быть Любой по умолчанию, измените его на Любой, Темный или Любой, Светлый, Темный , чтобы настроить значки, которые вы хотите использовать для каждого случая.

...