24

Yosemite でダーク モードが有効になっている場合は、ステータス バー アプリのアイコンを変更する必要があります。ダークモードが有効になっているかどうかを検出する方法は? 同じことの通知はありますか?

別の画像を表示するか、既存の Image のアルファ値を変更する方が良いですか? どちらがより良い方法であるかについての入力が必要ですか??

4

3 に答える 3

3

bergdesignが指摘したように、システム全体の通知を観察し、永続的なグローバル ドメインを読み取る必要があります。

ダーク モード設定の変更の処理を簡素化するクラスを作成しました: https://github.com/weAreYeah/WAYTheDarkSide

次のように簡単になります...

[WAYTheDarkSide welcomeApplicationWithBlock:^{
    // Enabling Dark Mode
    [someWindow setAppearance:[NSAppearance appearanceNamed:NSAppearanceNameVibrantDark]];
    [someVisualEffectView setMaterial:NSVisualEffectMaterialDark];

} immediately:YES];

[WAYTheDarkSide outcastApplicationWithBlock:^{
    // Disabling Dark Mode
    [someWindow setAppearance:[NSAppearance appearanceNamed:NSAppearanceNameVibrantLight]];
    [someVisualEffectView setMaterial:NSVisualEffectMaterialLight];

} immediately:YES];

お役に立てれば :)

于 2014-11-19T08:57:05.523 に答える