Jaki jest prawidłowy sposób korzystania z trybów Vibrant Dark (NSAppearanceNameVibrantDark
) lub Vibrant Light (NSAppearanceNameVibrantLight
) za pomocą NSWindow
?Jak korzystać z mrocznej wibracji na NSWindow?
Buduję aplikację i chcę zaoferować nowy wygląd Vibrant Dark jako opcję dla głównej aplikacji NSWindow
. Okno samo w sobie jest dość prostym oknem z numerem NSToolbar
u góry i widokiem przewijania jako głównym obszarem zawartości.
Istnieje wiele informacji od Apple na temat korzystania z nowych wyglądzie żywy w połączeniu z NSVisualEffectsView
, ale szukam wyjaśnienia na temat korzystania z tych wyglądy na NSWindow
.
W pliku nagłówkowym NSAppearance.h
znajduje się komentarz informujący, że jaskrawe wyglądy powinny być ustawione tylko na NSVisualEffectsView
. Nie ma żadnej wzmianki o tym, że jest obsługiwana pod adresem NSWindow
.
Filmy z konferencji WWDC mówią o tym, aby upewnić się, że używasz widoków z warstwami i że pozwalasz na wibracje w subspekcjach, gdy używasz nowych, żywych wyrażeń, ale znowu, nie wspominasz o używaniu ich na NSWindow
.
Przykładowy kod VisualEffectsPlayground ma przykład aplikacji podobnej do Facetime, która korzysta z trybu ciemnej wibracji, ale nie ma paska narzędzi i używa maski pełnej zawartości.
Od tej informacji, robię następujących w moim sposobie NSWindowController's windowDidLoad
:
[self.window.contentView setWantsLayer:YES];
self.window.appearance = [NSAppearance appearanceNamed:NSAppearanceNameVibrantDark];
I rzeczywiście, mam czarną NSToolbar
z czarnym pasku tytułowym okna. Tak więc wygląda on tak, jakby działał poprawnie, ale kiedy mój przewijany przewija treść (miniatury obrazów), to standardowa przezroczystość pod NSToolbar
i pasek tytułu okna jest albo nieobecny, albo jest losowo obecny. Wygląda na to, że nie ma żadnego wzoru. Czasami po przewinięciu przewijania zawartość jest wyświetlana w stanie "rozmazanym" pod paskiem narzędzi i na pasku tytułu. Innym razem, gdy przewijam, pasek narzędzi i pasek tytułu są po prostu nieprzezroczyste czarne. (Pasek tytułu i pasek narzędzi wciąż rysują tytuły i przyciski.)
Gdy nie zażądam warstwy dla widoku zawartości okna, to otrzymam więcej szarego paska tytułu i tytułu okna zamiast "czystego" czarnego . (Mój Scrollview za kolor tła może być biały, ciemny szary lub czarny).
Każda pomoc lub wyjaśnienie, w jaki sposób poprawnie skonfigurować NSWindow
(który zawiera NSToolbar
oraz NSScollView
) do korzystania z nowych występy żywotność byłaby znacznie ceniona .
http://stackoverflow.com/questions/24414483/how-can-i-use-nsvisualeffectview-in-windows-title-bar/24439689#24439689 – geowar