<KeyFrameSet>

Określa lokalizację i atrybuty widoków w trakcie sekwencji ruchu. Domyślnie ruch przechodzi od stanu początkowego do końcowego. Korzystając z <KeyFrameSet>, możesz tworzyć bardziej złożone ruchy.

<KeyFrameSet> zawiera węzły <KeyPosition> lub <KeyAttribute>. Te węzły określają pozycję lub atrybuty widoku docelowego w konkretnym punkcie ruchu. MotionLayout płynnie animuje widok z punktu początkowego do każdego punktu pośredniego, a następnie do ostatecznego miejsca docelowego.

Załóżmy, że początkowy stan sekwencji ruchu ma nieprzezroczystą kulę w lewym dolnym rogu widoku, a w końcowym stanie w prawym górnym rogu pojawia się przezroczysta kula. Domyślnie urządzenie MotionLayout płynnie przesuwa piłkę po ukośnej linii, aż stanie się przezroczysta, aż zniknie po dotarciu do miejsca docelowego. Używając <KeyFrameSet>, możesz zmienić to działanie. Możesz na przykład przesunąć piłkę w pionie do lewego górnego rogu i pozostawić ją całkowicie nieprzezroczystą, a potem przesunąć ją poziomo do prawego górnego rogu i znikać. Aby to zrobić, utwórz <KeyFrameSet> i dodaj w nim elementy <KeyPosition> oraz <KeyAttribute>. <KeyPosition> określa pośrednie położenie piłki, a <KeyAttribute> określa, że piłka pozostaje nieprzezroczysta w połowie ruchu.

Składnia

<KeyFrameSet>
    [ <KeyPosition/>... ]
    [ <KeyAttribute/>...]
</KeyFrameSet>

Zawarte w

<Transition>

Zawiera

<KeyPosition>
Określa pozycję widoku w określonym momencie sekwencji ruchu.
<KeyAttribute>
Określa atrybuty widoku w danym momencie sekwencji ruchu.