Udostępnij za pośrednictwem


Animacje kompozycji

Interfejsy API Microsoft.UI.Composition umożliwiają tworzenie, animowanie, przekształcanie i manipulowanie obiektami komponatora w ujednoliconej warstwie interfejsu API. Animacje kompozycyjne zapewniają zaawansowany i wydajny sposób uruchamiania animacji w interfejsie użytkownika WinUI. Zostały one zaprojektowane od podstaw, aby zapewnić działanie animacji w 60 FPS niezależnie od wątku interfejsu użytkownika oraz dają elastyczność do tworzenia niesamowitych doświadczeń przy użyciu nie tylko czasu, ale także wejściowych danych i innych właściwości do sterowania animacjami.

Ruch w Windows

Pomyśl o projektowaniu ruchu jak o filmie. Bezproblemowe przejścia pozwalają skoncentrować się na historii i ożywić doświadczenia. Możemy zaprosić to uczucie do naszych projektów, prowadząc ludzi z jednego zadania do następnego z filmową łatwością. Ruch jest często czynnikiem różnicującym między interfejsem użytkownika a środowiskiem użytkownika.

Jako podstawowy blok konstrukcyjny platformy interfejsu użytkownika systemu Windows, CompositionAnimations zapewniają zaawansowany i wydajny sposób tworzenia środowisk ruchu w interfejsie użytkownika aplikacji. Aparat animacji został zaprojektowany od podstaw, aby zapewnić, że ruch działa na 60 FPS, niezależnie od wątku interfejsu użytkownika. Te animacje mają na celu zapewnienie elastyczności tworzenia innowacyjnych środowisk ruchu na podstawie czasu, danych wejściowych i innych właściwości.

Przykłady ruchu

Oto kilka przykładów ruchu w aplikacji.

Tutaj aplikacja używa połączonej animacji, aby animować obrazek elementu, który kontynuuje i staje się częścią nagłówka następnej strony. Efekt pomaga zachować kontekst użytkownika w całym przejściu.

Przykład połączonej animacji

W tym miejscu efekt paralaksy wizualnej przesuwa różne obiekty z różnymi prędkościami, gdy interfejs użytkownika jest przewijany lub przesuwany, aby stworzyć uczucie głębokości, perspektywy i ruchu.

Przykład efektu paralaksy z listą i obrazem w tle

Tworzenie ruchu przy użyciu funkcji CompositionAnimations

Aby wygenerować ruch w interfejsie użytkownika, deweloperzy mogą uzyskiwać dostęp do animacji w języku XAML lub w warstwie wizualnej. Animacje w warstwie wizualnej zapewniają deweloperom szereg korzyści:

  • Wydajność — zamiast tradycyjnej animacji powiązanej z wątkiem UI, animacje na platformie UI Windows działają na niezależnym wątku z prędkością 60 klatek na sekundę, co zapewnia płynne doświadczenie ruchu.
  • Model tworzenia szablonów — animacje w warstwie interfejsu użytkownika systemu Windows to szablony, co oznacza, że można używać jednej animacji na wielu obiektach i dostosowywać właściwości lub parametry bez obaw o utrudnianie poprzednich zastosowań.
  • Dostosowywanie — warstwa UI Windows nie tylko ułatwia tworzenie pięknego interfejsu, ale dzięki pełnej gamie typów animacji umożliwia tworzenie nowych i niesamowitych doświadczeń z pełnym zakresem dostosowań.

Jako deweloper tworzący doświadczenia w warstwie UI systemu Windows masz dostęp do różnych koncepcji animacji, aby tchnąć życie w swoje projekty. Dowolnego z tych pojęć można użyć do animowania właściwości lub składnika podrzędnego (jeśli dotyczy) dowolnego obiektu CompositionObject.

Uwaga / Notatka

Nie wszystkie właściwości obiektu CompositionObject są animatowalne. Zapoznaj się z dokumentacją pojedynczego obiektu CompositionObject, aby określić, czy właściwość jest animatowalna.

Uwaga / Notatka

Termin subchannel odnosi się do formy składnika właściwości. Na przykład podkanał X lub XY właściwości przesunięcia Vector3.

Koncepcja animacji Opis
Ruch oparty na czasie z elementami KeyFrameAnimation Animacje KeyFrameAnimation są używane do bezpośredniej kontroli całości doświadczenia ruchu na przestrzeni czasu. Deweloperzy opisujący początek, koniec, interpolację między elementami i czas trwania w tradycyjny sposób w ramce kluczowej.
Względny ruch za pomocą ExpressionAnimations WyrażeniaAnimacje służą do opisywania sposobu, w jaki ruch właściwości jednego obiektu powinien być sterowany względem właściwości innego obiektu. Deweloperzy definiują równanie matematyczne definiujące relację opartą na odwołaniach.
Ukryte animacje Te animacje są oparte na wyzwalaczach i definiowane oddzielnie od podstawowej logiki aplikacji. NiejawneAnimacje służą do opisywania sposobu i momentu wystąpienia animacji jako odpowiedzi na zmiany właściwości bezpośrednich.
Ruch sterowany animacjami wejściowymi Animacje wejściowe obejmują zestaw scenariuszy, które umożliwiają deweloperom opisywanie ruchu opartego na manipulacji za pomocą dotyku lub innych modalności danych wejściowych. Te animacje są oparte na aktywnych danych wejściowych lub gestach użytkownika.
Ruch oparty na fizyce z NaturalMotionAnimations Animacje NaturalMotion służą do opisywania naturalnych i znanych doświadczeń ruchowych opartych na rzeczywistych siłach napędzających ruch. Zamiast definiować czas, deweloperzy definiują cechy ruchu (na przykład współczynnik tłumienia sprężyn)