Transição
Atualização mais recente | Versão estável | Versão candidata a lançamento | Versão Beta | Versão Alfa |
---|---|---|---|---|
11 de dezembro de 2024 | 1.5.1 | - | - | 1.6.0-alpha01 |
Declarar dependências
Para adicionar uma dependência a Transition, é preciso adicionar 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 { // Java language implementation implementation "androidx.transition:transition:1.5.1" // Kotlin implementation "androidx.transition:transition-ktx:1.5.1" }
Kotlin
dependencies { // Java language implementation implementation("androidx.transition:transition:1.5.1") // Kotlin implementation("androidx.transition:transition-ktx:1.5.1") }
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.
Versão 1.6
Versão 1.6.0-alpha01
11 de dezembro de 2024
Lançamento de androidx.transition:transition:1.6.0-alpha01
e androidx.transition:transition-ktx:1.6.0-alpha01
. A versão 1.6.0-alpha01 contém estas confirmações.
Novos recursos
- A transição agora define o pai disjunto para
ViewOverlays
usado para animar as transições. Isso permite a resolução de proprietários pelo pai disjunto, o que significa que agora você pode resolver corretamenteViewModels
, ciclos de vida etc. durante uma transição. (I10a16, b/340894487, b/287484338).
Correções de bugs
- Essa biblioteca agora usa anotações de nulidade JSpecify, que são de uso de tipo. Os desenvolvedores Kotlin precisam usar os seguintes argumentos do compilador para aplicar o uso correto:
-Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode
(I1f54e, b/326456246). - O contorno manual de acesso a novas APIs da plataforma foi removido, já que isso acontece automaticamente pelo modelagem de API ao usar o R8 com o AGP 7.3 ou mais recente (por exemplo, o R8 versão 3.3) e para todos os builds ao usar o AGP 8.1 ou mais recente (por exemplo, o D8 versão 8.1). Os clientes que não estão usando o AGP precisam fazer upgrade para a versão 8.1 ou mais recente do D8. Veja mais detalhes neste artigo. (Ia60e0, b/345472586).
Versão 1.5
Versão 1.5.1
24 de julho de 2024
Lançamento de androidx.transition:transition:1.5.1
e androidx.transition:transition-ktx:1.5.1
. A versão 1.5.1 contém estas confirmações.
Correções de bugs
- Correção de um problema em que as chamadas para
animateToStart()
ouanimateToEnd()
em uma transição pesquisável eram ignoradas se a transição não fosse iniciada (I44d96, b/338624457).
Versão 1.5.0
1º de maio de 2024
Lançamento de androidx.transition:transition:1.5.0
e androidx.transition:transition-ktx:1.5.0
. A versão 1.5.0 contém estas confirmações.
Mudanças importantes desde a versão 1.4.0
- As transições oferecem suporte à busca na API 34 e mais recentes. Uma nova API foi adicionada a
TransitionManager
,controlDelayedTransition()
, que retorna umTransitionSeekController
que permite buscar oTransition
. Essa funcionalidade é usada pelo Fragment 1.7.0 para procurar automaticamente transições ao usar o gesto de volta preditiva. - As transições têm um novo método,
getRootTransition()
, que retorna a transição que contém a transição atual ou a transição atual se ela não estiver contida em nenhuma outra transição. Isso pode ser útil se o desenvolvedor precisar ter listeners para quando toda a transição começar ou terminar. - Agora,
TransitionListeners
tem novos listenersonTransitionStart()
eonTransitionEnd()
que permitem que o desenvolvedor saiba se a transição está começando ou terminando, invertida ou não. Isso pode ser importante para desenvolver transições pesquisáveis que tenhamTransitionListeners
.
Versão 1.5.0-rc02
17 de abril de 2024
Lançamento de androidx.transition:transition:1.5.0-rc02
e androidx.transition:transition-ktx:1.5.0-rc02
. A versão 1.5.0-rc02 contém estas confirmações.
Atualização de dependências
- A dependência do fragmento foi atualizada para a versão 1.7.0-rc02, que corrigiu um bug em que, se um elemento compartilhado não pesquisável fosse adicionado a uma transação em que todas as outras transições fossem pesquisáveis, haveria uma falha.
Versão 1.5.0-rc01
3 de abril de 2024
Lançamento de androidx.transition:transition:1.5.0-rc01
e androidx.transition:transition-ktx:1.5.0-rc01
. A versão 1.5.0-rc01 contém estas confirmações.
Versão 1.5.0-beta01
20 de março de 2024
Lançamento de androidx.transition:transition:1.5.0-beta01
e androidx.transition:transition-ktx:1.5.0-beta01
. A versão 1.5.0-beta01 contém estas confirmações.
Correções de bugs
- Correção de um problema em fragmentos em que a interrupção de transições de entrada com um gesto de volta preditiva destruía a visualização de entrada, deixando uma tela em branco (Id3f22, b/319531491).
Versão 1.5.0-alpha06
10 de janeiro de 2024
Lançamento de androidx.transition:transition:1.5.0-alpha06
e androidx.transition:transition-ktx:1.5.0-alpha06
. A versão 1.5.0-alpha06 contém estas confirmações.
Correções de bugs
- Quando
TransitionSeekController.animateToStart()
é usado, oTransitionListeners
adicionado agora teráonTransitionEnd()
chamado após aRunnable
fornecida peloanimateToStart()
. (Ic6a55, b/307624554).
Atualização de dependências
- A dependência do fragmento foi atualizada para
1.7.0-alpha08
.
Versão 1.5.0-alpha05
29 de novembro de 2023
Lançamento de androidx.transition:transition:1.5.0-alpha05
e androidx.transition:transition-ktx:1.5.0-alpha05
. A versão 1.5.0-alpha05 contém estas confirmações.
Correções de bugs
- Correção de um
NullPointerException
causado por definir uma transição de elemento compartilhado e não definir umaenter/exitTransition
(I8472b). - Correção de um problema em que
animateToStart()
comSlide()
não conseguia mover a visualização de volta para a posição inicial (I698f4, b/300157785). - Correção do problema de reentrada na transição que quebrou o cancelamento (Iddcce, b/308379201).
Versão 1.5.0-alpha04
4 de outubro de 2023
Lançamento de androidx.transition:transition:1.5.0-alpha04
e androidx.transition:transition-ktx:1.5.0-alpha04. A versão 1.5.0-alpha04 contém estas confirmações.
Mudanças na API
- Mudança interruptiva: o método
animateToStart()
agora usa umRunnable
que precisa ser usado para retornar as visualizações de transição ao estado original.
Versão 1.5.0-alpha03
20 de setembro de 2023
Lançamento de androidx.transition:transition:1.5.0-alpha03
e androidx.transition:transition-ktx:1.5.0-alpha03
. A versão 1.5.0-alpha03 contém estas confirmações.
Novos recursos
- A transição agora oferece suporte a animações de volta preditiva no app em dispositivos Android 14 quando usada com Fragment
1.7.0-alpha05
.
Correções de bugs
- Correção do bug de interrupção da transição de slides. Quando uma transição de slide interrompeu uma transição de entrada para remover uma visualização, ela pulava para uma posição incorreta. (I946f8, b/297427333).
Versão 1.5.0-alpha02
6 de setembro de 2023
Lançamento de androidx.transition:transition:1.5.0-alpha02
e androidx.transition:transition-ktx:1.5.0-alpha02
. A versão 1.5.0-alpha02 contém estas confirmações.
Novos recursos
TransitionSeekController
agora permite definir o progresso como uma fração da duração total usandosetCurrentFragment()
. (aosp/2647607).- A
TransitionSeekController
agora permite observar o progresso ao usaranimateToStart()
eanimateToEnd()
chamandoaddOnProgressChangedListener
. (aosp/2647607). TransitionManager.seekTo()
foi adicionado para permitir o uso de cenas para buscar transições. (aosp/2647607).- Animações baseadas em física foram adicionadas às transições de busca. Ele usa um rastreador de velocidade 1D para acompanhar a mudança de progresso com
setCurrentFraction()
ousetCurrentPlayTimeMillis()
e o usa para a velocidade inicial deanimateToStart
eanimateToEnd
. (aosp/2647607).
Correções de bugs
- Correção de um tremor ao procurar um
AutoTransition
(aosp/2643369). - Correção de um problema em que uma transição
Slide
saltava para a posição inicial errada quando era interrompida (aosp/2733729, b/297427333).
Atualização de dependências
- A transição agora é compilada com a API 34.
Versão 1.5.0-alpha01
10 de maio de 2023
Lançamento de androidx.transition:transition:1.5.0-alpha01
e androidx.transition:transition-ktx:1.5.0-alpha01
. Esta versão foi desenvolvida em uma ramificação interna.
Novos recursos
- As transições oferecem suporte à busca na API 34 e mais recentes. Uma nova API foi adicionada à
TransitionManager
,controlDelayedTransition()
, que retorna umTransisionSeekController
que permite buscar a transição.
Mudanças na API
- O
TransitionManager
tem um novo método,controlDelayedTransition()
, que permite que os aplicativos controlem o progresso das animações de transição na API 34 e mais recentes. OTransitionSeekController
retornado informa ao desenvolvedor quando a transição está pronta para busca, a duração da animação e permite definir o tempo atual da animação. Somente as transições que substituemisSeekable()
para retornar "true" são compatíveis comcontrolDelayedTransition()
. - As transições têm um novo método,
getRootTransition()
, que retorna a transição que contém a transição atual ou a transição atual se ela não estiver contida em nenhuma outra transição. Isso pode ser útil se o desenvolvedor precisar ter listeners para quando toda a transição começar ou terminar. - Agora,
TransitionListeners
tem novos listenersonTransitionStart()
eonTransitionEnd()
que permitem que o desenvolvedor saiba se a transição está começando ou terminando, invertida ou não. Isso pode ser importante para desenvolver transições pesquisáveis que tenhamTransitionListeners
.
Correções de bugs
- As transições agora copiam o
TransitionListeners
quando são clonadas. Isso significa que adicionar novos listeners durantecreateAnimator()
não afeta a transição raiz.
Versão 1.4.1
Versão 1.4.1
21 de abril de 2021
Lançamento de androidx.transition:transition:1.4.1
e androidx.transition:transition-ktx:1.4.1
. A versão 1.4.1 contém estas confirmações.
Correções de bugs
- Correção de um problema em que iniciar uma
Transition
em um contêiner pausaria acidentalmente outras transições em execução em contêineres separados, o que fazia com que essas outras transições nunca fossem concluídas (aosp/1664439, b/182845041).
Versão 1.4.0
Versão 1.4.0
27 de janeiro de 2021
Lançamento de androidx.transition:transition:1.4.0
e androidx.transition:transition-ktx:1.4.0
. A versão 1.4.0 contém estas confirmações.
Principais mudanças desde a versão 1.3.0
- O artefato
transition-ktx
introduz extensões Kotlin para adicionar listeners às instânciasTransition
do AndroidX (b/138870873).
Versão 1.4.0-rc01
2 de dezembro de 2020
Lançamento de androidx.transition:transition:1.4.0-rc01
e androidx.transition:transition-ktx:1.4.0-rc01
, sem mudanças desde 1.4.0-beta01
. A versão 1.4.0-rc01 contém estas confirmações.
Versão 1.4.0-beta01
22 de julho de 2020
Lançamento de androidx.transition:transition:1.4.0-beta01
e androidx.transition:transition-ktx:1.4.0-beta01
, sem mudanças desde a 1.4.0-alpha01
. A versão 1.4.0-beta01 contém essas confirmações.
Versão 1.4.0-alpha01
24 de junho de 2020
Lançamento de androidx.transition:transition:1.4.0-alpha01
e androidx.transition:transition-ktx:1.4.0-alpha01
. A versão 1.4.0-alpha01 contém essas confirmações (link em inglês).
Novos recursos
- O artefato
transition-ktx
introduz extensões Kotlin para adicionar listeners às instânciasTransition
do AndroidX (b/138870873).
Versão 1.3.1
Versão 1.3.1
19 de fevereiro de 2020
androidx.transition:transition:1.3.1
é lançado. A versão 1.3.1 contém estas confirmações.
Correções de bugs
- Correção de um bug em que algumas visualizações animadas eram cortadas incorretamente durante o uso de ChangeTransform (b/148798452).
Versão 1.3.0
Versão 1.3.0
22 de janeiro de 2020
androidx.transition:transition:1.3.0
é lançado. A versão 1.3.0 contém essas confirmações (link em inglês).
Mudanças importantes desde a versão 1.2.0
- Melhorias em Fragment 1.2.0: melhoria na integração com o Fragment 1.2.0 para garantir que a visualização do fragmento não seja destruída antes da conclusão da transição e que as transições sejam canceladas no momento adequado
Versão 1.3.0-rc02
4 de dezembro de 2019
androidx.transition:transition:1.3.0-rc02
é lançado. A versão 1.3.0-rc02 contém essas confirmações (link em inglês).
Correções de bugs
- Correção de um problema em que as visualizações eram incorretamente marcadas como
INVISIBLE
depois de exibirem um fragmento oculto (b/70793925, link em inglês).
Versão 1.3.0-rc01
23 de outubro de 2019
androidx.transition:transition:1.3.0-rc01
é lançado sem mudanças desde 1.3.0-beta01
. A versão 1.3.0-rc01 contém essas confirmações (link em inglês).
Versão 1.3.0-beta01
9 de outubro de 2019
androidx.transition:transition:1.3.0-beta01
é lançado. A versão 1.3.0-beta01 contém essas confirmações (link em inglês).
Novos recursos
- Integração aprimorada com Fragment
1.2.0-beta01
para garantir que a visualização do fragmento não seja destruída antes da conclusão da transição e que as transições sejam canceladas no momento adequado (aosp/1119841, link em inglês)
Versão 1.2.0
Versão 1.2.0
9 de outubro de 2019
androidx.transition:transition:1.2.0
é lançado sem mudanças desde a versão 1.2.0-rc01. A versão 1.2.0 contém essas confirmações (link em inglês).
Mudanças importantes desde a versão 1.1.0
Use essa versão se você estiver segmentando a API de nível 29. Caso contrário, algumas das transições não funcionarão corretamente. Em vez das chamadas de reflexão, essa versão usa os novos métodos públicos adicionados na API nível 29. Ela faz parte das nossas restrições ao esforço de interfaces que não são SDK.
Version 1.2.0-rc01
5 de setembro de 2019
androidx.transition:transition:1.2.0-rc01
é lançado sem mudanças desde a versão 1.2.0-beta01
. As confirmações incluídas nessa versão podem ser encontradas aqui (link em inglês).
Versão 1.2.0-beta01
2 de julho de 2019
Lançamento de androidx.transition:transition:1.2.0-beta01
. As confirmações incluídas nessa versão podem ser encontradas aqui (link em inglês).
Novos recursos
- Use essa versão para a
targetSdkVersion
29. Caso contrário, algumas das transições não funcionarão corretamente. Em vez das chamadas de reflexão, essa versão usa os novos métodos públicos adicionados na API nível 29. Ela faz parte das nossas restrições ao esforço de interfaces que não são SDK.
Versão 1.2.0-alpha01
7 de maio de 2019
Lançamento do androidx.transition:transition:1.2.0-alpha01
.
Novos recursos
- Use essa versão para a
targetSdkVersion
Q. Caso contrário, algumas das transições não funcionarão corretamente. Em vez das chamadas de reflexão, essa versão usa os novos métodos públicos adicionados em Q. Ela faz parte das nossas restrições ao esforço de interfaces que não são SDK.
Versão 1.1.0
Versão 1.1.0
2 de julho de 2019
Lançamento de androidx.transition:transition:1.1.0
sem mudanças desde 1.1.0-rc02
. As confirmações incluídas nessa versão podem ser encontradas aqui (link em inglês).
Versão 1.1.0-rc02
5 de junho de 2019
androidx.transition:transition:1.1.0-rc02
é lançado. As confirmações incluídas nessa versão podem ser encontradas aqui (link em inglês).
Correções de bugs
- Correção para
TransitionManager.endTransitions()
funcionar corretamente com transições dependentes (aosp/946400, link em inglês)
Versão 1.1.0-rc01
7 de maio de 2019
Lançamento de androidx.transition:transition:1.1.0-rc01
. As confirmações incluídas nessa versão podem ser encontradas aqui (link em inglês).
Versão 1.1.0-beta01
3 de abril de 2019
Lançamento de androidx.transition:transition:1.1.0-beta01
. As confirmações incluídas nessa versão podem ser encontradas aqui (link em inglês).
Correções de bugs
- Corrigido bug de cache
ViewGroupOverlay
emVisibility
, na API de nível 17 e anteriores (aosp/937350).
Versão 1.1.0-alpha02
13 de março de 2019
Lançamento de androidx.transition:transition:1.1.0-alpha02
. A lista completa de confirmações incluídas nessa versão pode ser encontrada neste link.
Mudanças na API
- O tipo de parâmetro do método de
Scene.getCurrentScene()
foi alterado deView
paraViewGroup
.
Correções de bugs
SidePropagation
não funciona quando um atraso extra é disponibilizado porsetStartDelay()
(b/119839526).ChangeImageTransform
aplica a matriz incorreta quando interrompido antes da API 21. (b/123226255).ChangeTransform
funciona incorretamente em alguns casos antes da API 21 (b/125777978).
Versão 1.1.0-alpha01
3 de dezembro de 2018
Mudanças na API
- aosp/807055: o método
Scene.getCurrentScene(View)
se tornou público. Ele permite escrever uma lógica condicional personalizada, dependendo da cena atual.
Correções de bugs
- Correção de uma falha ao usar
TransitionManager
para recolher/expandir um item emRecyclerView
( b/37129527). - Correção de uma animação incorreta quando duas transições de Visibility eram aplicadas (b/62629600).
- Permissão de valores modificados, como duração e interpolador, para filhos do TransitionSet (b/64644617).
- Vários outros bugs secundários foram corrigidos.