<KeyFrameSet>

Especifica la ubicación y los atributos de las vistas durante la secuencia de movimiento. De forma predeterminada, el movimiento pasa del estado inicial al final. Si usas <KeyFrameSet>, puedes compilar movimientos más complejos.

<KeyFrameSet> contiene nodos <KeyPosition> o <KeyAttribute>. Estos nodos especifican la posición o los atributos de una vista de destino en un punto específico del movimiento. MotionLayout anima de manera fluida la vista desde el punto de partida hasta cada punto intermedio y, luego, hasta el destino final.

Supongamos que el estado inicial de la secuencia de movimiento tiene una bola opaca en la esquina inferior izquierda de la vista, y el estado final hace que la bola sea transparente en la esquina superior derecha. De forma predeterminada, el elemento MotionLayout mueve la bola suavemente en una línea diagonal, y se vuelve transparente de manera gradual hasta desaparecer cuando alcanza su destino. Si usas <KeyFrameSet>, puedes cambiar este comportamiento. Por ejemplo, puedes hacer que la bola se mueva verticalmente a la esquina superior izquierda mientras permanece completamente opaca y, luego, moverla horizontalmente a la esquina superior derecha mientras se desvanece. Para ello, crea un <KeyFrameSet> y agrega <KeyPosition> y <KeyAttribute> dentro de él. El <KeyPosition> especifica la ubicación intermedia de la bola, y el <KeyAttribute> indica que la bola permanece opaca en el punto medio del movimiento.

Sintaxis

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

Dónde se incluye

<Transition>

Contenido

<KeyPosition>
Especifica la posición de una vista en un momento específico durante la secuencia de movimiento.
<KeyAttribute>
Especifica atributos de vista en un momento específico durante la secuencia de movimiento.