Specifica la posizione di una visualizzazione in un momento specifico durante la sequenza di movimento. Questo attributo viene utilizzato per regolare il percorso predefinito del movimento.
Ad esempio, se un oggetto inizia nell'angolo in alto a sinistra e termina nel
angolo in basso a destra, la sequenza di movimento predefinita sposta l'oggetto in diagonale verso il basso
sullo schermo. Aggiungendo uno o più elementi <KeyPosition>
, puoi deformare il
del tuo percorso di apprendimento.
Sintassi
<KeyPosition motion:motionTarget="@id/targetPath" motion:framePosition="percentage" motion:keyPositionType="type" motion:percentX="xOffset" motion:percentY="yOffset" />
Attributi
motion:motionTarget
- Visualizza il movimento di cui questa
<KeyPosition>
controlla il movimento. motion:framePosition
- Numero intero da 1 a 99 che specifica il punto della sequenza di movimento raggiunta dalla visualizzazione
il punto specificato da questo
<KeyPosition>
. Ad esempio, seframePosition
è 25, la visualizzazione raggiunge il punto specificato un quarto del movimento. motion:percentX
,motion:percentY
- Specifica la posizione raggiunta dalla visualizzazione.
keyPositionType
specifica come vengono interpretati questi valori. motion:keyPositionType
- Specifica come vengono visualizzati i valori
percentX
epercentY
viene interpretata correttamente. Le impostazioni possibili sono le seguenti: parentRelative
percentX
epercentY
sono specificati in relazione a la vista principale. X è l'asse orizzontale, che va da 0 per la sinistra. a 1 per il lato destro. Y è l'asse verticale, dove 0 corrisponde all'asse in alto e 1 è la parte inferiore.Ad esempio, se vuoi che la vista target raggiunga un punto a metà strada sul lato destro della vista principale, imposta
percentX
su 1 e dapercentY
a 0,5.deltaRelative
percentX
epercentY
sono specificati in relazione a la distanza in cui si muove la vista lungo l'intera sequenza di movimenti. X è l'asse orizzontale e Y è l'asse verticale. In entrambi i formati, dei casi, 0 è la posizione iniziale della vista su quell'asse e 1 è la posizione finale posizione.Supponiamo che la vista target si sposti di 100 dp verso l'alto e di 100 dp verso destra, ma vuoi la vista per spostarsi verso il basso di 40 dp per il primo quarto del movimento e poi tornare indietro di un arco verso l'alto. Imposta
framePosition
su 25,keyPositionType
sudeltaRelative
epercentY
a -0, 4.pathRelative
L'asse X è la direzione in cui si sposta la vista target lungo il percorso del percorso, dove 0 rappresenta la posizione iniziale e 1 la posizione finale. La L'asse Y è perpendicolare all'asse X, con i valori positivi a sinistra dell'asse percorso e i valori negativi a destra. Quindi la posizione iniziale della vista
(0,0)
e la posizione finale è(1,0)
. L'impostazione di un un valorepercentY
diverso da zero causa un arco della vista in una direzione o e l'altro.Supponiamo che la visualizzazione prenda metà della sequenza di movimento per coprire il 10% della la distanza totale, quindi accelera per coprire l'altro 90%. Imposta Da
framePosition
a 50, dakeyPositionType
apathRelative
epercentX
a 0, 1.percentY
rimane 0.
- .