Especifica a localização e os atributos das visualizações ao longo da sequência de
movimento. Por padrão, o movimento prossegue do estado inicial ao estado final.
Usando <KeyFrameSet>
, você pode criar movimentos mais complexos.
O <KeyFrameSet>
contém nós
<KeyPosition>
ou
<KeyAttribute>
. Esses nós especificam a posição ou os atributos de uma visualização de destino em um
ponto específico do movimento.
MotionLayout
anima a visualização do ponto de partida para cada ponto intermediário
e, em seguida, para o destino final.
Suponha que o estado inicial da sequência de movimento tenha uma bola opaca no
canto inferior esquerdo da visualização e que o estado final torne a bola transparente no
canto superior direito. Por padrão, o MotionLayout
move a bola suavemente
em uma linha diagonal, tornando-se gradualmente transparente até desaparecer ao
chegar ao destino. Ao usar <KeyFrameSet>
, você pode mudar esse comportamento.
Por exemplo, é possível fazer a bola se mover verticalmente para o canto superior esquerdo
enquanto permanece totalmente opaca e depois se mover horizontalmente para o canto superior direito
enquanto esmaece. Para fazer isso, crie um <KeyFrameSet>
e
adicione um <KeyPosition>
e um <KeyAttribute>
nele. O <KeyPosition>
especifica o local intermediário da bola, e o <KeyAttribute>
especifica que a bola permanece opaca no ponto médio do movimento.
Sintaxe
<KeyFrameSet> [ <KeyPosition/>... ] [ <KeyAttribute/>...] </KeyFrameSet>
Contido em
Contém
<KeyPosition>
- Especifica a posição de uma visualização em um momento específico durante a sequência de movimento.
<KeyAttribute>
- Especifica atributos de visualização em um momento específico durante a sequência de movimento.