簡體   English   中英

優勝美地深色的NSPopover顏色反轉

[英]NSPopover color invert in Yosemite dark color

我正在使用NSPopover ,當我將系統底座顏色更改為深色(Yosemite新功能)時,我視圖中的某些元素會反轉它們的顏色。

例如,某些標簽從黑色變為灰色,或者文本字段背景從白色變為黑色。 如果我有一個帶白色背景的視圖,它現在變為模糊的暗效果。

所以有兩個問題:

  1. 我可以取消此行為並強制用戶界面像常規模式一樣嗎?

  2. 這里有哪些規則可以反轉它們的顏色?

因為似乎有些元素改變而有些則沒有。

這是我在優勝美地常規模式中的應用:

在此輸入圖像描述

這是在約塞米蒂黑暗模式:

在此輸入圖像描述

它可能是您正在使用的庫導致此行為。 我剛剛測試了一個新項目,無論我怎么努力,我都無法使NSPopover成為黑色。

你在用什么庫? 你是如何設置NSPopover的?

也許你可以嘗試更改視圖的外觀屬性?

view.appearance = [NSAppearance appearanceNamed:NSAppearanceNameAqua];

NSView具有屬性appearance因為它符合NSAppearanceCustomization

另見NSAppearance

------------------------

找到解決方案:

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

結果:

有辦法做到這一點,但我建議接受它。 它沒有具體記錄會發生什么變化以及如何變化。 但觀察會告訴你該怎么做。 主要是它需要你做與選擇相反的操作。選擇使用Appkit接口元素,以及使用作為系統顏色提供的NSColor名稱並使用NSVisualEffectView。 這意味着要明確選擇退出,你需要繞過並基本上自定義視圖,這主要意味着設置明確的顏色和偶爾子類化。 開箱即用的HUD風格的popovers和面板將選擇加入。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM