2016-12-03 29 views
1

Ich versuche eine Möglichkeit zu finden, den Modus in OS Sierra von hell zu dunkel zu ändern. Ich habe dies die Einstellungen zu ändern:Dark-Modus macOS Sierra

CFPreferencesSetValue((CFStringRef)@"AppleInterfaceStyle", @"Dark", kCFPreferencesAnyApplication, kCFPreferencesCurrentUser, kCFPreferencesCurrentHost); 

Und das Betriebssystem zu sagen über die Änderung zu holen:

dispatch_async(dispatch_get_main_queue(), 
       ^{CFNotificationCenterPostNotification(CFNotificationCenterGetDistributedCenter(), (CFStringRef)@"AppleInterfaceThemeChangedNotification", NULL, NULL, true);} 
       ); 

jedoch nur das Dock ändert, nicht die Meldungen und Menüleiste. Vielen Dank für Ihre Hilfe.

Edit: Wenn jemand eine Liste der Schlüssel hat, die in this function stecken, wäre das hilfreich. Ich kann es nicht auf den Apple Docs finden.

Antwort

1

Ich fand ein bisschen ein hacky Weg, dies zu erreichen. Mit applescript ist es ziemlich einfach (und sicher), das Thema zu ändern.

Script unter:

tell application "System Events" 
    tell appearance preferences to set dark mode to not dark mode 
end tell 

Kompilieren Sie das Skript, fügen Sie es dem xcodeproject und tun etwas Forschung auf, wie Apple innerhalb Ziel c auszuführen.