Constraintlayout
androidx.constraintlayout.widget
Esta tabela lista todos os artefatos no grupo androidx.constraintlayout
.
Artefato | Versão estável | Versão candidata a lançamento | Versão Beta | Versão Alfa |
---|---|---|---|---|
constraintlayout | 2.2.0 | - | - | - |
constraintlayout-compose | 1.1.0 | - | - | - |
constraintlayout-core | 1.1.0 | - | - | - |
Declarar dependências
Para adicionar uma dependência a ConstraintLayout, adicione o repositório Maven do Google ao seu projeto. Leia Repositório Maven do Google para ver mais informações.
Adicione as dependências dos artefatos necessários ao arquivo build.gradle
do
seu app ou módulo:
Groovy
dependencies { implementation "androidx.constraintlayout:constraintlayout:2.2.0-beta01" // To use constraintlayout in compose implementation "androidx.constraintlayout:constraintlayout-compose:1.1.0-beta01" }
Kotlin
dependencies { implementation("androidx.constraintlayout:constraintlayout:2.2.0-beta01") // To use constraintlayout in compose implementation("androidx.constraintlayout:constraintlayout-compose:1.1.0-beta01") }
Para mais informações sobre dependências, consulte Adicionar dependências de build.
Feedback
Seu feedback ajuda a melhorar o Jetpack. Avise se você descobrir novos problemas ou tiver ideias para melhorar esta biblioteca. Consulte os problemas conhecidos nesta biblioteca antes de criar um novo. Adicione seu voto a um problema clicando no botão de estrela.
Consulte a documentação do Issue Tracker para saber mais.
ConstraintLayout-compose e ConstraintLayout-Core 1.1
Versão 1.1.0
30 de outubro de 2024
Lançamento de androidx.constraintlayout:constraintlayout-compose:1.1.0
, androidx.constraintlayout:constraintlayout-compose-android:1.1.0
e androidx.constraintlayout:constraintlayout-core:1.1.0
. A versão 1.1.0 contém estas confirmações.
Mudanças importantes desde a versão 1.0.0
- Correção da interação com SharedTransitionLayout (b/332898040).
- Correção de problemas de layout relacionados à medição devido à recomposição (b/219091179, Ibfe8a).
Versão 1.1.0-rc01
16 de outubro de 2024
Lançamento de androidx.constraintlayout:constraintlayout-compose:1.1.0-rc01
, androidx.constraintlayout:constraintlayout-compose-android:1.1.0-rc01
e androidx.constraintlayout:constraintlayout-core:1.1.0-rc01
. A versão 1.1.0-rc01 contém estas confirmações.
Versão 1.1.0-beta01
4 de setembro de 2024
Lançamento de androidx.constraintlayout:constraintlayout-compose:1.1.0-beta01
, androidx.constraintlayout:constraintlayout-compose-android:1.1.0-beta01
e androidx.constraintlayout:constraintlayout-core:1.1.0-beta01
. A versão 1.1.0-beta01 contém estas confirmações.
Versão 1.1.0-alpha14
7 de agosto de 2024
Lançamento de androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha14
, androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha14
e androidx.constraintlayout:constraintlayout-core:1.1.0-alpha14
. A versão 1.1.0-alpha14 contém estas confirmações.
Mudanças na API
- Agora, as flags são fornecidas individualmente pelo objeto complementar e podem ser combinadas com o operador
or
. (I9df53). - Assistentes simplificados
createRow
ecreateColumn
Melhorias nos nomes dos parâmetroscreateGrid
e na documentação para esclarecimento. (Iebc92). - A API
animateChanges
foi simplificada emConstraintLayout
para precisar apenas de umAnimationSpec
não nulo.onIncomingConstraints
emInvalidationStrategy
agora é uma lambda normalfixedWidthRate
foi renomeado comoshouldInvalidateOnFixedWith
, o mesmo para a variante de altura. (Ie59cd, b/332898040, b/336370035). - As origens
NestedScroll
Drag e Fling estão sendo substituídas porUserInput
eSideEffect
para acomodar a definição estendida dessas origens, que agora incluem animações (Side Effect) e roda do mouse e teclado (UserInput). (I40579).
Versão 1.1.0-alpha13
4 de outubro de 2023
Lançamento de androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha13
, androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha13
e androidx.constraintlayout:constraintlayout-core:1.1.0-alpha13
sem mudanças. A versão 1.1.0-alpha13 contém estas confirmações.
- Esta versão permite que as bibliotecas
androidx.constraintlayout
sejam compatíveis com a ABI das versões mais recentes do Compose.
Versão 1.1.0-alpha12
9 de agosto de 2023
Lançamento de androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha12
, androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha12
e androidx.constraintlayout:constraintlayout-core:1.1.0-alpha12
. A versão 1.1.0-alpha12 contém estas confirmações.
Mudanças na API
- O
LayoutScopeMarker
foi adicionado à DSL de transição. (If54ce).
Versão 1.1.0-alpha11
26 de julho de 2023
Lançamento de androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha11
, androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha11
e androidx.constraintlayout:constraintlayout-core:1.1.0-alpha11
. A versão 1.1.0-alpha11 contém estas confirmações.
Novos recursos
- Agora é possível fornecer um
InvalidationStrategy
para otimizar as invalidações emMotionLayout
. Isso normalmente causa uma queda no desempenho. (Iada0c). - Agora é possível usar
animateChanges = true
ao usarConstraintLayout
com a DSL de modificador inline (Modifier.constrainAs
). Sempre que uma mudança na DSL de restrições é feita,ConstraintLayout
é animado automaticamente para esse novo estado. (I9abf1). - Funcionalidade ativada para
limitBoundsTo
no OnSwipe. (I56522).
Mudanças na API
TransitionScope.staggered
foi renomeado comoTransitionScope.maxStaggerDelay
(I0fd2d).
Correções de bugs
- Correção do parâmetro
dragScale
deOnSwipe
que não funcionava. (8bef26). - Correção de
customColor
emMotionScene
, que não funcionava corretamente com cores transparentes. (81b2ac). - Correção de
OnSwipe
, que não anunciava corretamente quando parava. Também corrigimos o cálculo da velocidade inicial paratouchUp
. (Ia5f6f). - O KDoc foi atualizado para o elemento combinável
ConstraintLayout
eConstraintset
. (3bfe63).
Versão 1.1.0-alpha10
24 de maio de 2023
Lançamento de androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha10
, androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha10
e androidx.constraintlayout:constraintlayout-core:1.1.0-alpha10
. A versão 1.1.0-alpha10 contém estas confirmações.
Mudanças na API
- A API
MotionLayout
não é mais experimental. Ela representa o conjunto inicial de APIs estáveis paraMotionLayout
. (I288f4). MotionLayoutState
foi removido. (Id3ac1).- Agora você pode usar
DebugFlags
para depuração visual:DebugFlags(showBounds = true)
. (Ic714b). - Variável de extensão
Dp.asDimension
alterada para um método:Dp.asDimension()
. (I2d6ef). - A DSL
MotionLayout
agora tem suporte para escalonamento. Defina o atraso máximo comTransitionScope.staggered
. Você também pode usarConstrainScope.staggeredWeight
(em umMotionSceneScope
) para receber uma ordem escalonada personalizada. (I70275). - Duas mudanças foram feitas no auxiliar de grade: 1.
paddingLeft
epaddingRight
parapaddingStart
epaddingEnd
, respectivamente, e 2. atualize o formato degridSpans
egridSkip
para uma matriz dos objetos Span e Skip para torná-lo mais estrutural. (Idd1eb).
Versão 1.1.0-alpha09
22 de março de 2023
Lançamento de androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha09
e androidx.constraintlayout:constraintlayout-core:1.1.0-alpha09
. A versão 1.1.0-alpha09 contém estas confirmações.
Mudanças na API
Modifier.intermediateLayout
agora não exige umLookaheadScope
explícito. O bloco de medida emintermediateLayout
temIntermediateMeasureScope
como receptor, o que forneceCoroutineScope
,LookaheadScope
eMeasureScope
convenientes.LookaheadLayout
foi substituído porLookaheadScope
, que não é mais um layout. Isso permite que o conteúdo da criança em umaLookaheadScope
seja controlado diretamente peloMeasurePolicy
do responsável. (Ibe2e5).Easing.Cubic()
agora pode usar parâmetros de overshoot. (I2d826).
Versão 1.1.0-alpha08
8 de março de 2023
Lançamento de androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha08
e androidx.constraintlayout:constraintlayout-core:1.1.0-alpha08
. A versão 1.1.0-alpha08 contém estas confirmações.
Novos recursos
- Verificações de lint foram adicionadas para sugerir o uso de
Dimension.percent(1f)
eLayoutReference.withChainParams()
em casos em que os padrões típicos podem levar a um comportamento imprevisível. (I62eb0, I03060).
Mudanças na API
- Ative as flags
ReverseSpanDirection
eSpansOrderFirst
para o Grid Helper no Compose.ReverseSpanDirection
: inverte a especificação de largura e altura para períodos/pulados.SpansOrderFirst
: os spans respeitariam a ordem dos widgets. (I6ad50).
- Use
Modifier.onStartEndBoundsChanged(...)
para extrair os limites locais dos elementos combináveis em umaMotionLayout
que não são afetados pela animação. Útil para qualquer interação de interface que exija informações de layout que também possam acionar animações, comoDragAndDrop
. (I6b5f9). - Ativação de saltos e extensões do auxiliar de grade no Compose (I917b6).
Correções de bugs
- Correção das propriedades de tradução que não aplicavam os valores esperados. (I961cd).
Versão 1.1.0-alpha07
8 de fevereiro de 2023
Lançamento de androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha07
e androidx.constraintlayout:constraintlayout-core:1.1.0-alpha07
. A versão 1.1.0-alpha07 contém estas confirmações.
Novos recursos
- Adição de novas APIs para ativar o auxiliar de grade no Compose usando a DSL (I1143b).
Correções de bugs
- Correção de
Wrap.Chain
, porque o fluxo não mostrava o parâmetromaxElement
corretamente (e1f2ed3). - Correção de
start
ConstraintSet
que não era atualizado ao mudar de transição paraMotionLayout(motionScene: MotionScene, progress: Float, transitionName: String)
(17ffff1). - Correção de
ConstraintSet
que não refletia algumas mudanças ao herdar restrições deConstraintSet(extendConstraintSet: ConstraintSet, description: ConstraintSetScope.() -> Unit)
(740804b).
Versão 1.1.0-alpha06
25 de janeiro de 2023
Lançamento de androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha06
e androidx.constraintlayout:constraintlayout-core:1.1.0-alpha06
. A versão 1.1.0-alpha06 contém estas confirmações.
Novos recursos
- Adicione novas APIs para ativar o auxiliar de grade no Compose com uma representação JSON que permite que os elementos combináveis sejam colocados em uma grade 2D (I968ad).
Mudanças na API
- Adicione suporte aos modos de arco para cima e para baixo
Arc.Above
e modos de arco independente de direçãoArc.Below
paraMotionLayout
(I184a9). - Agora é possível restringir uma âncora do valor de referência a âncoras para cima/baixo e vice-versa (I54628).
MotionLayoutScope#motionProperties
(incluindo derivados) foi renomeado comoMotionLayoutScope#customProperties
. Isso é consistente ao definir propriedades personalizadas (Ib34c9).- Agora é possível criar várias referências em
ConstraintSet
eMotionScene
:val (box, text, button) = createRefsFor("box", "text","button")
. Aplique restrições a vários elementos comconstrain(box, button, text)
. Dentro deConstrainScope
, agora é possível definir intuitivamente uma dimensão fixa comDp.asDimension
:width = 10.dp.asDimension
(I021ec, Ia0960). - Os métodos
MotionScene()
eTransition()
agora são funções que não são combináveis. Os objetos dessas funções (incluindoConstraintSet
) agora precisam ser diferentes entre si.animateChanges = true
emConstraintLayout
agora pode ser usado com apenas uma referênciaConstraintSet
, desde que qualquer uma das propriedades seja mudada na recomposição (I7d22e).
Correções de bugs
- O problema em que
ConstraintLayout
sempre acionava uma recomposição extra desnecessária quando os auxiliares eram mudados foi corrigido (Id83ad, b/222093277). - Corrija o comportamento ao usar intrínsecos com
ConstraintLayout
eMotionLayout
(I487ae, b/220527863). - Corrija o problema de não poder medir novamente quando o conteúdo muda (Ibfe8a, b/219091179).
Versão 1.1.0-alpha05
7 de dezembro de 2022
Lançamento de androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha05
e androidx.constraintlayout:constraintlayout-core:1.1.0-alpha05
. A versão 1.1.0-alpha05 contém estas confirmações.
Novos recursos
- Suporte a
KeyAttributes
personalizados na DSL (b94e748). - Propriedades de viés da plataforma em
ConstrainScope
(32625d0). - Suporte a parâmetros personalizados em cadeias (72a2e9e).
- Foram adicionados testes de Macrobenchmark para
MotionLayout
no Compose (36f43bc). - Para saber mais sobre as mudanças na versão anterior do Compose, consulte a página da wiki.
Mudanças na API
- Inversão dos parâmetros
addConstraintSet
eaddTransition
(152facc).
Correções de bugs
- Correção de cadeias horizontais (ed5f56e).
Versão 1.1.0-alpha01
20 de maio de 2022
Lançamento de androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha01
.
A API MotionLayout agora é experimental e requer ativação.
Para mais informações, consulte Novidades no Compose 1.1.0-alpha01 (em inglês) no GitHub.
Versão 2.2
Versão 2.2.0
30 de outubro de 2024
Lançamento de androidx.constraintlayout:constraintlayout:2.2.0
. A versão 2.2.0 contém estas confirmações.
Mudanças importantes desde a versão 2.1.0
- Versão de paridade com a biblioteca constraintlayout-core.
Versão 2.2.0-rc01
16 de outubro de 2024
Lançamento de androidx.constraintlayout:constraintlayout:2.2.0-rc01
. A versão 2.2.0-rc01 contém estas confirmações.
Versão 2.2.0-beta01
4 de setembro de 2024
Lançamento de androidx.constraintlayout:constraintlayout:2.2.0-beta01
. A versão 2.2.0-beta01 contém estas confirmações.
Versão 2.2.0-alpha14
7 de agosto de 2024
Lançamento de androidx.constraintlayout:constraintlayout:2.2.0-alpha14
. A versão 2.2.0-alpha14 contém estas confirmações.
Versão 2.2.0-alpha13
4 de outubro de 2023
Lançamento de androidx.constraintlayout:constraintlayout:2.2.0-alpha13
sem mudanças. A versão 2.2.0-alpha13 contém estas confirmações.
Versão 2.2.0-alpha12
9 de agosto de 2023
Lançamento de androidx.constraintlayout:constraintlayout:2.2.0-alpha12
. A versão 2.2.0-alpha12 contém estas confirmações.
Versão 2.2.0-alpha11
26 de julho de 2023
Lançamento de androidx.constraintlayout:constraintlayout:2.2.0-alpha11
. A versão 2.2.0-alpha11 contém estas confirmações.
Mudanças na API
- Foi adicionado um método setter para permitir que os desenvolvedores definam o valor de
mInfiniteCarousel
de forma programática (I0a8ca).
Versão 2.2.0-alpha10
24 de maio de 2023
Lançamento de androidx.constraintlayout:constraintlayout:2.2.0-alpha10
. A versão 2.2.0-alpha10 contém estas confirmações.
Correções de bugs
- Correção de um link incorreto do documento
MotionLayout
. (51cbe88).
Versão 2.2.0-alpha09
22 de março de 2023
Lançamento de androidx.constraintlayout:constraintlayout:2.2.0-alpha09
. A versão 2.2.0-alpha09 contém estas confirmações.
Versão 2.2.0-alpha08
8 de março de 2023
Lançamento de androidx.constraintlayout:constraintlayout:2.2.0-alpha08
. A versão 2.2.0-alpha08 contém estas confirmações.
Versão 2.2.0-alpha07
8 de fevereiro de 2023
Lançamento de androidx.constraintlayout:constraintlayout:2.2.0-alpha07
. A versão 2.2.0-alpha07 contém estas confirmações.
Correções de bugs
- Correção do problema de falta de conteúdo da página
ConstraintLayout
(I82e25).
Versão 2.2.0-alpha05
7 de dezembro de 2022
Lançamento de androidx.constraintlayout:constraintlayout:2.2.0-alpha05
. A versão 2.2.0-alpha05 contém estas confirmações.
- Para saber mais sobre as mudanças na versão anterior, consulte a página do wiki do GitHub.
Correções de bugs
- Correção do vazamento no carrossel de visualização (eb67b82).
Versão 2.2.0-alpha01
20 de maio de 2022
Lançamento de androidx.constraintlayout:constraintlayout:2.2.0-alpha01
.
Inclui uma visualização do novo auxiliar Grid
.
Para saber mais, consulte o artigo do GitHub Novidades na versão 2.2.0-alpha01 (link em inglês).
ConstraintLayout-compose 1.0
O ConstraintLayout-compose 1.0 oferece funcionalidades de ConstraintLayout no Jetpack Compose.
Versão 1.0.1
20 de maio de 2022
Lançamento de androidx.constraintlayout:constraintlayout-compose:1.0.1
.
A API MotionLayout agora é experimental e requer ativação.
Para mais informações, consulte Novidades no Compose 1.0.1 (em inglês) no GitHub.
Versão 1.0.0
13 de janeiro de 2022
Lançamento de androidx.constraintlayout:constraintlayout-compose:1.0.0
.
A API MotionLayout agora é experimental e requer ativação.
Para saber mais, consulte o artigo do GitHub Novidades na versão 1.0 do Compose (link em inglês).
Versão 1.0.0-rc02
16 de novembro de 2021
Lançamento de androidx.constraintlayout:constraintlayout-compose:1.0.0-rc02
.
Para saber mais, consulte o artigo do GitHub Novidades na versão 1.0 do Compose (link em inglês).
Versão 1.0.0-rc01
27 de setembro de 2021
androidx.constraintlayout:constraintlayout-compose:1.0.0-rc01
é lançado.
Esta é a segunda versão Beta. Ela é considerada completa e oferece o
ConstraintLayout
e o MotionLayout
para o Compose.
Para saber mais, consulte o artigo do GitHub Novidades na versão 1.0 do Compose (link em inglês).
Versão 1.0.0-beta02
30 de julho de 2021
Lançamento de androidx.constraintlayout:constraintlayout-compose:1.0.0-beta02
.
Esta é a segunda versão Beta. Ela é considerada completa e oferece o
ConstraintLayout
e o MotionLayout
para o Compose.
Para saber mais, consulte o artigo do GitHub Novidades na versão 1.0 do Compose (link em inglês).
Versão 1.0.0-beta01
22 de julho de 2021
Lançamento de androidx.constraintlayout:constraintlayout-compose:1.0.0-beta01
.
Esta é a primeira versão Beta. Ela é considerada completa e oferece o
ConstraintLayout
e o MotionLayout
para o Compose.
Para saber mais, consulte o artigo do GitHub Novidades na versão 1.0 do Compose (link em inglês).
Versão 1.0.0-alpha07
18 de maio de 2021
Lançamento de androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha07
.
- Atualizada para ser compatível com a versão
1.0.0-beta07
do Compose.
Versão 1.0.0-alpha06
4 de maio de 2021
Lançamento de androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha06
.
- Otimização do Compose: o Constraintlayout in-line pode ser composto (#193)
- As medições que são feitas novamente foram minimizadas no Compose (#210)
Versão 1.0.0-alpha05
15 de março de 2021
Lançamento de androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha05
.
- Inclui uma correção para o mecanismo de otimização (b/182657720).
- Um parâmetro optimizationLevel foi adicionado ao ConstraintLayout que pode ser composto.
Versão 1.0.0-alpha04
11 de março de 2021
Lançamento de androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha04
.
Atualize para usar o mecanismo constraintlayout-core mais recente.
Versão 1.0.0-alpha03
24 de fevereiro de 2021
Lançamento de androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha03
.
Lançamento da atualização da versão do Jetpack Compose beta01.
Versão 1.0.0-alpha02
10 de fevereiro de 2021
Lançamento de androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha02
.
Lançamento da atualização da versão do Jetpack Compose alpha12.
Versão 1.0.0-alpha01
2 de fevereiro de 2021
Lançamento de androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha01
.
Primeiro lançamento da biblioteca, fornecendo DSLs externas e in-line para expressar restrições.
Versão 2.1
O ConstraintLayout 2.1.0 oferece recursos mais completos no MotionLayout e novos auxiliares (Carousel etc.)
Versão 2.1.4
20 de maio de 2022
Lançamento de androidx.constraintlayout:constraintlayout:2.1.4
.
Para saber mais, consulte o artigo do GitHub Novidades na versão 2.1.4 (link em inglês).
Versão 2.1.3
13 de janeiro de 2022
Lançamento de androidx.constraintlayout:constraintlayout:2.1.3
.
Para saber mais, consulte o artigo do GitHub Novidades na versão 2.1 (link em inglês).
Versão 2.1.2
16 de novembro de 2021
Lançamento de androidx.constraintlayout:constraintlayout:2.1.2
.
Para saber mais, consulte o artigo do GitHub Novidades na versão 2.1 (link em inglês).
Versão 2.1.1
27 de setembro de 2021
androidx.constraintlayout:constraintlayout:2.1.1
é lançado.
Esta é a versão final para 2.1.1.
Para saber mais, consulte o artigo do GitHub Novidades na versão 2.1 (link em inglês).
Versão 2.1.0
30 de julho de 2021
Lançamento de androidx.constraintlayout:constraintlayout:2.1.0
.
Esta é a versão final para 2.1.0.
Para saber mais, consulte o artigo do GitHub Novidades na versão 2.1 (link em inglês).
Versão 2.1.0-rc01
22 de julho de 2021
Lançamento de androidx.constraintlayout:constraintlayout:2.1.0-rc01
.
Esse é o candidato a lançamento para a versão 2.1.0 e oferece pequenas melhorias e correções desde a última versão Beta. Para saber mais, consulte o artigo do GitHub Novidades na versão 2.1 (link em inglês).
Versão 2.1.0-beta02
4 de maio de 2021
Lançamento de androidx.constraintlayout:constraintlayout:2.1.0-beta02
.
Alguns novos recursos no MotionLayout:
- Melhorias do método OnSwipe, incluindo de mola (rigidez, amortecimento, massa, etc.) e nunca concluídas.
- Função jumpToState.
- Modo ViewTransition downUp em que tocar em "down" vai até 100 e tocar em "up" para 0.
Várias correções, especialmente:
- Correção de um problema no MotionLayout com rolagem vertical (#173)
- Melhorias de desempenho no MotionLayout aninhado (#189)
- Transição rápida com NestedScrollView no MotionLayout (#189)
- ConstraintSet excluído do MotionLayout (#189)
- Suporte para ViewTransitions downUp no MotionLayout (#190)
- Correção no ImageFilter ao reutilizar drawables (#192)
- Suporte para mola adicionado ao MotionLayout (#199)
- Melhoria de desempenho no CircularFlow (#200)
- Correções nas restrições derivadas / substituição de restrição (#212)
Versão 2.1.0-beta01
11 de março de 2021
Lançamento de androidx.constraintlayout:constraintlayout:2.1.0-beta01
.
ConstraintLayout
android:layout_width e android:layout_height voltaram a ser obrigatórios devido a problemas de compatibilidade.
MotionLayout
- Suporte programático para inserir e remover onSwipe e onClick nas transições.
- Suporte experimental para transições com rotação de tela
- Suporte a argumentos de duração para transições
- Melhor compatibilidade com customAttributes booleanos ou referências.
Auxiliares
- Uma forma de animar ou pular diretamente para um determinado item de um carrossel foi adicionada.
- O novo auxiliar CircularFlow foi adicionado.
Veja mais informações sobre esta versão, aqui e bugs resolvidos (links em inglês).
Versão 2.1.0-alpha2
17 de dezembro de 2020
Lançamento do androidx.constraintlayout:constraintlayout:2.1.0-alpha2
.
Este segundo alfa adiciona vários recursos novos:
ConstraintLayout
- android:layout_width e android:layout_height agora são opcionais, com wrap_content como comportamento padrão.
- Novos atributos layout_constraintWidth e layout_constraintHeight para expressar restrições de dimensão.
- Suporte a margens negativas para restrições.
- Suporte a valores de referência das restrições superior e inferior.
- Suporte a restrições de margem do valor de referência.
- SharedValues permite injetar valores externos no ConstraintLayout.
MotionLayout
- Suporte a interpoladores de ultrapassagem (antecipar, ultrapassar).
- Suporte melhorado para MotionHelper.
- Adição de atualização animada de ConstraintSet ao MotionLayout updateStateAnimate(id,cset,duration);.
- Valor compartilhado baseado em ViewTransition.
- scheduleTransitonTo permite que você faça uma transição para execução na conclusão da transição atual.
Auxiliares
- O Carousel agora oferece suporte para o modo infinito (circular).
- ReactiveGuide: uma diretriz que se posiciona automaticamente quando um SharedValue muda.
- MotionEffect: injeta Keyframes em visualizações referenciadas se movendo em determinada direção.
- MotionLabel: visualização para animar texto de linha única.
Veja mais informações sobre essa versão aqui.
Versão 2.1.0-alpha1
19 de novembro de 2020
Lançamento do androidx.constraintlayout:constraintlayout:2.1.0-alpha1
.
Primeiro Alfa da versão 2.1. Apresenta suporte para:
- o auxiliar de movimento Carousel para criar visualizações de carrossel personalizadas;
- as cenas do MotionLayout compatíveis com substituição de inclusões e restrições;
- MotionLayout adiciona compatibilidade maior com rotação (entrada e saída);
- MotionLayout adiciona ViewTransitions, permitindo transições de visualização única para mutação de conjuntos de restrições.
Veja mais informações sobre essa versão aqui.
Versão 2.0
O ConstraintLayout 2.0 adiciona novos recursos a layouts, como layouts virtuais, e uma nova classe para simplificar a animação de visualizações, a MotionLayout.
Versão 2.0.4
29 de outubro de 2020
Lançamento do androidx.constraintlayout:constraintlayout:2.0.4
.
Correções de bugs
Esta versão conta com correções de um possível NPE que pode acontecer ao remover uma visualização filha no tempo de execução. Recomendamos atualizar para esta versão.
Veja aqui a lista de problemas resolvidos.
Versão 2.0.3
27 de outubro de 2020
Lançamento do androidx.constraintlayout:constraintlayout:2.0.3
.
Correções de bugs
Esta versão corrige alguns problemas. Recomendamos atualizar para esta versão.
- Processamento de inserções do Windows
- Processamento da proporção da dimensão em algumas situações
- Falha com alguns layouts RTL
Veja aqui a lista de problemas resolvidos.
Versão 2.0.2
6 de outubro de 2020
Lançamento de androidx.constraintlayout:constraintlayout:2.0.2
.
Correções de bugs
Esta versão melhora o desempenho e corrige alguns problemas. Recomendamos atualizar para esta versão.
- O processamento da visibilidade da visualização GONE em ConstraintLayout estava incorreto em algumas situações.
- O processamento de cadeias empacotadas no ConstraintLayout estava incorreto em algumas situações.
- Correção da exceção de inflação na API 15 para o auxiliar de layout virtual do Flow.
- limitsBoundsTo estava corrompido no MotionLayout.
- jump to end estava corrompido no MotionLayout em algumas situações (transições de encadeamento).
Veja aqui a lista de problemas resolvidos.
Versão 2.0.1
25 de agosto de 2020
Lançamento de androidx.constraintlayout:constraintlayout:2.0.1
.
Esta é uma atualização pequena que permite o uso do MotionEditor no Android Studio.
Versão 2.0.0
21 de agosto de 2020
Lançamento do androidx.constraintlayout:constraintlayout:2.0.0
.
Correções de bugs
Veja aqui a lista de problemas resolvidos.
As correções importantes são as seguintes:
- Atrasos na MotionLayout Transition e correções do TransitionListener
- Correções do fluxo e da barreira ConstraintLayout
Versão 2.0.0-rc1
29 de julho de 2020
Lançamento do androidx.constraintlayout:constraintlayout:2.0.0-rc1
.
Correções de bugs
Veja aqui a lista de problemas resolvidos.
As correções importantes são as seguintes:
- Correções de fluxo
- Correções do RecyclerView (recomendamos atualizar o recyclerview para 1.2.0 alpha 5 ou mais recente)
- Correções do MotionLayout TransitionListener
- Correção do vazamento de memória do MotionLayout
Versão 2.0.0-beta8
7 de julho de 2020
Lançamento do androidx.constraintlayout:constraintlayout:2.0.0-beta8
.
Correções de bugs
Veja aqui a lista de problemas resolvidos.
As correções importantes são as seguintes:
- Comportamento do marcador
- Visibilidade da camada
- Fluxo, correções de barreira
- Correções de TransitionListener
Versão 2.0.0-beta7
12 de junho de 2020
Lançamento de androidx.constraintlayout:constraintlayout:2.0.0-beta7
.
Correções de bugs
Veja aqui a lista de problemas resolvidos.
As correções importantes são as seguintes:
- Problemas de visualização de rolagem aninhada em MotionLayout
- Problemas de listener de transição com MotionLayout
- Vazamento de memória em MotionLayout
- Problemas de RecyclerView
- Visibilidade do grupo
- Problemas de padding
Versão 2.0.0-beta6
13 de maio de 2020
Lançamento de androidx.constraintlayout:constraintlayout:2.0.0-beta6
.
Correções de bugs
Veja aqui a lista de problemas resolvidos. As principais correções são problemas de processamento de visibilidade de grupo e restrições derivadas no MotionLayout.
Versão 2.0.0-beta5
7 de maio de 2020
Lançamento de androidx.constraintlayout:constraintlayout:2.0.0-beta5
.
Correções de bugs
Veja aqui a lista de problemas resolvidos
Versão 2.0.0-beta4
16 de dezembro de 2019
Lançamento de androidx.constraintlayout:constraintlayout:2.0.0-beta4
.
Novos recursos
MotionLayout
Novos atributos em Transition:
- layoutDuringTransition: permite que você configure como a classe MotionLayout reagirá às chamadas de requestLayouts de filhos durante uma transição. Os valores possíveis são {ignoreRequest, honorRequest}
- pathMotionArc: o caminho percorrido pelos elementos em movimento usará um arco. Os valores possíveis são {startVertical | startHorizontal | flip | none}
Agora é possível definir uma transição padrão omitindo os ConstraintSets de início e fim. Essa transição padrão será usada se não for encontrada nenhuma outra transição correspondente aos estados de início e fim.
Correções de bugs
Veja aqui a lista de problemas resolvidos