Menentukan posisi tampilan pada waktu tertentu selama urutan gerak. Atribut ini digunakan untuk menyesuaikan jalur default gerak.
Misalnya, jika sebuah objek dimulai dari sudut kiri atas dan berakhir pada
sudut kanan bawah, urutan gerakan default menggerakkan objek secara diagonal ke bawah
layar. Dengan menambahkan satu atau beberapa elemen <KeyPosition>, Anda dapat mengubah bentuk
.
Sintaksis
<KeyPosition motion:motionTarget="@id/targetPath" motion:framePosition="percentage" motion:keyPositionType="type" motion:percentX="xOffset" motion:percentY="yOffset" />
Atribut
motion:motionTarget- Lihat gerakan siapa yang dikontrol oleh
<KeyPosition>ini. motion:framePosition- Bilangan bulat dari 1 hingga 99 yang menentukan kapan tampilan mencapai urutan gerak
titik yang ditentukan oleh
<KeyPosition>ini. Misalnya, jikaframePositionadalah 25, tampilan mencapai titik yang ditentukan seperempat dari seluruh gerakan. motion:percentX,motion:percentY- Menentukan posisi yang dijangkau tampilan.
keyPositionTypemenetapkan bagaimana nilai-nilai ini ditafsirkan. motion:keyPositionType- Menentukan cara nilai
percentXdanpercentYditafsirkan. Setelan yang dapat digunakan adalah sebagai berikut: parentRelativepercentXdanpercentYditentukan secara relatif terhadap tampilan induk. X adalah sumbu horizontal, berkisar dari 0 untuk sebelah kiri ke 1 untuk sisi kanan. Y adalah sumbu vertikal, dengan 0 adalah sumbu atas dan 1 menjadi bawah.Misalnya, jika Anda ingin tampilan target mencapai titik di tengah bagian bawah sisi kanan tampilan induk, setel
percentXke 1 danpercentYhingga 0,5.deltaRelativepercentXdanpercentYditentukan secara relatif terhadap jarak yang bergerak tampilan sepanjang sepanjang rangkaian gerakan. X adalah sumbu horizontal dan Y adalah sumbu vertikal. Di keduanya pada sumbu x, 0 adalah posisi awal tampilan di sumbu tersebut, dan 1 adalah posisi akhir posisi Anda.Misalnya tampilan target bergerak 100 dp ke atas dan 100 dp ke kanan, tetapi Anda ingin tampilan untuk turun 40 dp untuk seperempat pertama gerak, lalu melengkung kembali ke atas. Tetapkan
framePositionke 25,keyPositionTypekedeltaRelative, danpercentYmenjadi -0,4.pathRelativeSumbu X adalah arah pergerakan tampilan target sepanjang jalur, dengan 0 sebagai posisi awal dan 1 sebagai posisi akhir. Tujuan Sumbu Y tegak lurus terhadap sumbu X, dengan nilai positif di sebelah kiri sumbu dan nilai negatif di sebelah kanan. Jadi posisi awal tampilan adalah
(0,0)dan posisi terakhir adalah(1,0). MenyetelpercentYbukan nol menyebabkan tampilan melengkung ke satu arah atau lainnya.Misalkan Anda ingin tampilan mengambil setengah dari urutan gerak untuk mencakup 10% dari jarak total, lalu percepat untuk menempuh 90% lainnya. Setel
framePositionhingga 50,keyPositionTypehingga 50pathRelative, danpercentXmenjadi 0.1.percentYtetap 0.