Określa pozycję widoku w konkretnym momencie sekwencji animacji. Ten atrybut służy do dostosowywania domyślnej ścieżki animacji.
Jeśli na przykład obiekt zaczyna się w lewym górnym rogu i kończy na
w prawym dolnym rogu, domyślna sekwencja ruchu przesuwa obiekt ukośnie w dół
na ekranie. Dodając co najmniej 1 element <KeyPosition>, możesz odkształcić
ścieżki konwersji.
Składnia
<KeyPosition motion:motionTarget="@id/targetPath" motion:framePosition="percentage" motion:keyPositionType="type" motion:percentX="xOffset" motion:percentY="yOffset" />
Atrybuty
motion:motionTarget- Zobacz, czyje ruchy steruje ten element
<KeyPosition>. motion:framePosition- Liczba całkowita od 1 do 99, która określa, kiedy w sekwencji animacji następuje wyświetlenie
punkt określony przez ten element:
<KeyPosition>. Na przykład, jeśliframePositionto 25, widok dochodzi do określonego punktu co 1/4. motion:percentX,motion:percentY- Określ pozycję, na jaką znajduje się widok.
keyPositionTypeokreśla sposób interpretacji tych wartości. motion:keyPositionType- Określa, jak są wartości
percentXipercentYinterpretowany. Możliwe ustawienia: parentRelativeWartości
percentXipercentYsą określone w odniesieniu do w widoku rodzica. X to oś pozioma (od 0 po lewej stronie). na 1 po prawej stronie. Y to oś pionowa, przy czym 0 to oś. 1 to góra, a 1 to dół.Jeśli na przykład chcesz, aby widok docelowy docierał do połowy po prawej stronie widoku rodzica, ustaw
percentXna 1 ipercentYdo 0,5.deltaRelativeWartości
percentXipercentYsą określone w odniesieniu do odległość, jaką pokonuje widok w trakcie całej sekwencji. X to oś pozioma, a Y – oś pionowa. W obu przypadków 0 oznacza początkową pozycję widoku na tej osi, a 1 – ostateczną pozycję widoku. pozycji.Załóżmy, że widok docelowy przesuwa się o 100 dp w górę i o 100 dp w prawo, ale chcesz obraz jest przesuwany w dół o 40 dp przez pierwszą ćwiartkę ruchu, a potem cofnij się w górę. Ustaw
framePositionna 25,keyPositionTypenadeltaRelativeipercentYdo -0, 4.pathRelativeOś X to kierunek, w którym widok docelowy przesuwa się po ścieżki, gdzie 0 oznacza pozycję początkową, a 1 – pozycję końcową. Oś Y jest prostopadła do osi X, przy czym wartości dodatnie znajdują się po lewej stronie i wartości ujemne po prawej. Początkowe położenie widoku to
(0,0), a ostatnia pozycja to(1,0). Ustawienie niezerowapercentYsprawia, że widok jest skierowany w jednym kierunku lub w inne.Załóżmy, że chcesz, aby połowa filmu obejmowała 10% pokonuj kolejne 90%, a potem przyspieszaj, aby pokonać pozostałe 90%. Ustaw
framePositiondo 50, odkeyPositionTypedopathRelativeipercentXdo 0, 1.percentYpozostaje 0.