Este documento contém exemplos de como usar
MotionLayout
.
Cada exemplo inclui um vídeo que demonstra o movimento, além do código
correspondente para a cena e layouts do movimento.
Movimento básico
Este exemplo contém uma única visualização que você pode tocar e arrastar para mover horizontalmente.
- Confira o XML do layout.
- Confira o
MotionScene
XML.
Atributo personalizado: backgroundColor
Este exemplo é semelhante ao Movimento básico. Além do movimento básico, a cor de fundo muda à medida que a visualização se move.
- Confira o XML do layout.
- Confira o
MotionScene
XML.
ImageFilterView: transição de imagens
Este exemplo mostra como fazer a transição do valor de saturação de uma
ImageFilterView
.
- Confira o XML do layout.
- Confira o
MotionScene
XML.
Posição de frames-chave
Este exemplo usa <KeyFrameSet>
para alterar a posição Y da visualização durante o
movimento.
- Confira o XML do layout.
- Confira o
MotionScene
XML.
Interpolação de frames-chave
Este exemplo é criado na Posição do frame-chave, adicionando rotação e dimensionamento à transição da visualização.
- Confira o XML do layout.
- Confira o
MotionScene
XML.
Ciclo de frames-chave
Este exemplo inclui elementos <KeyCycle>
para adicionar movimento de onda à visualização.
- Confira o XML do layout.
- Confira o
MotionScene
XML.
CoordinatorLayout (1/2)
Este exemplo adiciona um MotionLayout
a um AppBarLayout
já existente para adicionar movimento
à barra de apps. Este exemplo é descrito em
Introdução ao MotionLayout (parte III).
- Confira o XML do layout.
- Confira o
MotionScene
XML.
CoordinatorLayout (2/2)
Este exemplo adiciona um MotionLayout
a um AppBarLayout
já existente para adicionar movimento
à barra de apps.
- Confira o XML do layout.
- Confira o
MotionScene
XML.
DrawerLayout (1/2)
Este exemplo mostra como adicionar movimento a um DrawerLayout
. Este exemplo é
descrito em
Introdução ao MotionLayout (parte III).
- Confira o XML do layout.
- Confira o
MotionScene
XML.
DrawerLayout (2/2)
Este exemplo mostra como adicionar movimento a um DrawerLayout
.
- Confira o XML do layout.
- Confira o XML
MotionScene
do conteúdo principal. - Confira o XML
MotionScene
do menu.
Painel lateral
Este exemplo mostra como exibir um painel lateral ao arrastar a área de conteúdo principal para a direita.
- Confira o XML do layout.
- Confira o
MotionScene
XML.
Paralaxe
Este exemplo demonstra um segundo plano paralaxe, em que diferentes camadas se movem em velocidades diferentes.
- Confira o XML do layout.
- Confira o
MotionScene
XML.
ViewPager
Este exemplo mostra como adicionar movimento ao deslizar entre guias ViewPager
.
Este exemplo é descrito em
Introdução ao MotionLayout (parte III).
- Confira o XML do layout.
- Confira o
MotionScene
XML.
ViewPager: Lottie
Este exemplo mostra como adicionar movimento ao deslizar entre guias ViewPager
.
- Confira o XML do layout.
- Confira o
MotionScene
XML.
Movimento complexo (1/3)
Este exemplo combina elementos de exemplos anteriores para demonstrar movimentos complexos.
- Confira o XML do layout.
- Confira o
MotionScene
XML.
Movimento complexo (2/3)
Este exemplo combina elementos de exemplos anteriores para demonstrar movimentos complexos.
- Confira o XML do layout.
- Confira o
MotionScene
XML.
Movimento complexo (3/3)
Este exemplo combina elementos de exemplos anteriores para demonstrar movimentos complexos.
- Confira o XML do layout.
- Confira o
MotionScene
XML.
Transição de fragmentos (1/2)
Este exemplo mostra como usar MotionLayout
para fazer a transição entre
fragmentos.
- Confira o XML do layout.
- Confira o
MotionScene
XML.
Transição de fragmentos (2/2)
Este exemplo mostra como usar MotionLayout
para fazer a transição entre
fragmentos.
- Confira o XML do layout.
- Confira o
MotionScene
XML.
Movimento parecido com o YouTube
Este exemplo demonstra a transição entre uma visualização compacta e uma experiência em tela cheia com conteúdo extra.
- Confira o XML do layout.
- Confira o
MotionScene
XML.
KeyTrigger
Este exemplo demonstra como mostrar e ocultar um botão de ação flutuante quando a transição ultrapassa um limite de progresso.
- Confira o XML do layout.
- Confira o
MotionScene
XML.
Estado múltiplo
Este exemplo mostra como usar o estado para determinar qual movimento aplicar.
- Confira o XML do layout.
- Confira o
MotionScene
XML.