7

を使用してNSPopoverおり、システム ドックの色を暗い色に変更すると (Yosemite の新機能)、ビュー内の一部の要素の色が反転します。

たとえば、一部のラベルが黒から灰色に変わったり、テキスト フィールドの背景が白から黒に変わったりします。白い背景のビューがある場合、ぼやけた暗い効果に変わります。

2つの質問:

  1. この動作をキャンセルして、UI を通常モードのように動作させることはできますか?

  2. 要素の色を反転させるルールはありますか?

要素が変化するものとそうでないものがあるように見えるからです。

これは Yosemite 通常モードでの私のアプリです:

ここに画像の説明を入力

そして、これは Yosemite のダーク モードです。

ここに画像の説明を入力

4

2 に答える 2

10

この動作を引き起こしているのは、使用しているライブラリである可能性があります。新しいプロジェクトでテストしたところ、どんなに頑張っても NSPopover を黒くすることができませんでした。

どのライブラリを使用していますか? NSPopover をどのように設定しましたか?

ビューの外観プロパティを変更してみてはいかがでしょうか。

view.appearance = [NSAppearance appearanceNamed:NSAppearanceNameAqua];

NSView はNSAppearanceCustomizationappearanceに準拠しているため、プロパティを持っています。

NSAppearanceも参照してください。

———————————————————————</p>

解決策を見つけました:

self.popover.appearance = [NSAppearance appearanceNamed:NSAppearanceNameAqua];

結果:

于 2014-10-04T10:14:51.537 に答える