Transición
Actualización más reciente | Versión estable | Versión potencial | Versión beta | Versión alfa |
---|---|---|---|---|
11 de diciembre de 2024 | 1.5.1 | - | - | 1.6.0-alpha01 |
Cómo declarar dependencias
Para agregar una dependencia en Transition, debes agregar el repositorio Maven de Google a tu proyecto. Consulta el repositorio Maven de Google para obtener más información.
Agrega las dependencias de los artefactos que necesites en el archivo build.gradle
de tu app o 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 obtener más información sobre las dependencias, consulta Cómo agregar dependencias de compilación.
Comentarios
Tus comentarios ayudan a mejorar Jetpack. Avísanos si descubres nuevos errores o tienes ideas para mejorar esta biblioteca. Consulta los errores existentes de esta biblioteca antes de crear uno nuevo. Puedes agregar tu voto a un error existente haciendo clic en el botón de la estrella.
Consulta la documentación sobre la Herramienta de seguimiento de errores para obtener más información.
Versión 1.6
Versión 1.6.0-alpha01
11 de diciembre de 2024
Lanzamiento de androidx.transition:transition:1.6.0-alpha01
y androidx.transition:transition-ktx:1.6.0-alpha01
. La versión 1.6.0-alpha01 contiene estas confirmaciones.
Nuevas funciones
- La transición ahora establece el elemento superior disyuntivo para
ViewOverlays
que se usa para animar sus transiciones. Esto permite resolver los propietarios a través del elemento superior disyunto, lo que significa que ahora puedes resolver correctamenteViewModels
, los ciclos de vida, etc. durante una transición. (I10a16, b/340894487, b/287484338).
Correcciones de errores
- Esta biblioteca ahora usa anotaciones de nulidad de JSpecify, que son de tipo de uso. Los desarrolladores de Kotlin deben usar los siguientes argumentos del compilador para aplicar el uso correcto:
-Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode
(I1f54e, b/326456246). - Se quitó el esquema manual de acceso a las nuevas APIs de la plataforma, ya que esto se realiza automáticamente a través del modelado de API cuando se usa R8 con AGP 7.3 o versiones posteriores (p.ej., R8 versión 3.3) y para todas las compilaciones cuando se usa AGP 8.1 o versiones posteriores (p.ej., D8 versión 8.1). Se recomienda a los clientes que no usen AGP que actualicen a la versión 8.1 de D8 o una posterior. Consulta este artículo para obtener más detalles. (Ia60e0, b/345472586).
Versión 1.5
Versión 1.5.1
24 de julio de 2024
Lanzamiento de androidx.transition:transition:1.5.1
y androidx.transition:transition-ktx:1.5.1
. La versión 1.5.1 contiene estas confirmaciones.
Correcciones de errores
- Se solucionó un problema por el que se ignoraban las llamadas a
animateToStart()
oanimateToEnd()
en una transición que se podía buscar si no se iniciaba la transición. (I44d96, b/338624457).
Versión 1.5.0
1 de mayo de 2024
Lanzamiento de androidx.transition:transition:1.5.0
y androidx.transition:transition-ktx:1.5.0
. La versión 1.5.0 contiene estas confirmaciones.
Cambios importantes desde la versión 1.4.0
- Las transiciones admiten el salto en el nivel de API 34 y versiones posteriores. Se agregó una nueva API a
TransitionManager
,controlDelayedTransition()
, que muestra unTransitionSeekController
que permite buscar elTransition
. El Fragment 1.7.0 usa esta funcionalidad para buscar transiciones automáticamente cuando se usa el gesto atrás predictivo. - Las transiciones tienen un método nuevo,
getRootTransition()
, que muestra la transición que contiene la transición actual o la transición actual si no está contenida por ninguna otra transición. Esto puede ser útil si el desarrollador necesita tener objetos de escucha para cuando comienza o termina toda la transición. TransitionListeners
ahora tiene nuevos objetos de escuchaonTransitionStart()
yonTransitionEnd()
que permiten al desarrollador saber si la transición comienza o termina en reversa o no. Esto puede ser importante para desarrollar transiciones buscables que tenganTransitionListeners
.
Versión 1.5.0-rc02
17 de abril de 2024
Lanzamiento de androidx.transition:transition:1.5.0-rc02
y androidx.transition:transition-ktx:1.5.0-rc02
. La versión 1.5.0-rc02 contiene estas confirmaciones.
Actualización de dependencia
- Se actualizó la dependencia de Fragment a la versión 1.7.0-rc02, que corrigió un error que se producía si se agregaba un elemento compartido no accesible a una transacción en la que todas las demás transiciones eran accesibles.
Versión 1.5.0-rc01
3 de abril de 2024
Lanzamiento de androidx.transition:transition:1.5.0-rc01
y androidx.transition:transition-ktx:1.5.0-rc01
. La versión 1.5.0-rc01 contiene estas confirmaciones.
Versión 1.5.0-beta01
20 de marzo de 2024
Lanzamiento de androidx.transition:transition:1.5.0-beta01
y androidx.transition:transition-ktx:1.5.0-beta01
. La versión 1.5.0-beta01 contiene estas confirmaciones.
Correcciones de errores
- Se solucionó un problema en los fragmentos en el que interrumpir las transiciones entrantes con un gesto atrás predictivo destruía la vista de entrada, lo que podría dejar una pantalla en blanco. (Id3f22, b/319531491)
Versión 1.5.0-alpha06
10 de enero de 2024
Lanzamiento de androidx.transition:transition:1.5.0-alpha06
y androidx.transition:transition-ktx:1.5.0-alpha06
. La versión 1.5.0-alpha06 contiene estas confirmaciones.
Correcciones de errores
- Cuando se usa
TransitionSeekController.animateToStart()
, elTransitionListeners
agregado ahora tendrá una llamada aonTransitionEnd()
después delRunnable
proporcionado poranimateToStart()
. (Ic6a55, b/307624554).
Actualización de dependencia
- La dependencia de Fragment se actualizó a
1.7.0-alpha08
.
Versión 1.5.0-alpha05
29 de noviembre de 2023
Lanzamiento de androidx.transition:transition:1.5.0-alpha05
y androidx.transition:transition-ktx:1.5.0-alpha05
. La versión 1.5.0-alpha05 contiene estas confirmaciones.
Correcciones de errores
- Se corrigió un
NullPointerException
causado por establecer una transición de elementos compartidos y no establecer unenter/exitTransition
. (I8472b) - Se solucionó un problema por el que
animateToStart()
conSlide()
no lograba mover el elemento View a la posición inicial (I698f4, b/300157785). - Se corrigió el problema de reentrada en Transition que interrumpía la cancelación. (Iddcce, b/308379201).
Versión 1.5.0-alpha04
4 de octubre de 2023
Se lanzaron androidx.transition:transition:1.5.0-alpha04
y androidx.transition:transition-ktx:1.5.0-alpha04. La versión 1.5.0-alpha04 contiene estas confirmaciones.
Cambios en la API
- Cambio rotundo: El método
animateToStart()
ahora toma unRunnable
que se debe usar para devolver las vistas de transición a su estado original.
Versión 1.5.0-alpha03
20 de septiembre de 2023
Lanzamiento de androidx.transition:transition:1.5.0-alpha03
y androidx.transition:transition-ktx:1.5.0-alpha03
. La versión 1.5.0-alpha03 contiene estas confirmaciones.
Nuevas funciones
- Transition ahora admite animaciones de atrás predictivo integradas en la app en dispositivos con Android 14 cuando se usa con Fragment
1.7.0-alpha05
.
Correcciones de errores
- Se corrigió el error de interrupción de la transición de diapositivas. Cuando una transición de deslizamiento interrumpía una transición de entrada para quitar un elemento View, saltaba a una posición incorrecta. (I946f8, b/297427333)
Versión 1.5.0-alpha02
6 de septiembre de 2023
Lanzamiento de androidx.transition:transition:1.5.0-alpha02
y androidx.transition:transition-ktx:1.5.0-alpha02
. La versión 1.5.0-alpha02 contiene estas confirmaciones.
Nuevas funciones
TransitionSeekController
ahora te permite establecer el progreso como una fracción de la duración total a través desetCurrentFragment()
. (aosp/2647607).TransitionSeekController
ahora permite observar el progreso cuando se usananimateToStart()
yanimateToEnd()
llamando aaddOnProgressChangedListener
. (aosp/2647607).- Se agregó
TransitionManager.seekTo()
para permitir el uso de escenas para buscar transiciones. (aosp/2647607). - Se agregaron animaciones basadas en la física a las transiciones de búsqueda. Usa un rastreador de velocidad de 1D para hacer un seguimiento del cambio de progreso con
setCurrentFraction()
osetCurrentPlayTimeMillis()
y lo usa para la velocidad inicial deanimateToStart
yanimateToEnd
. (aosp/2647607).
Correcciones de errores
- Se corrigió un parpadeo cuando se buscaba un
AutoTransition
. (aosp/2643369). - Se solucionó un problema por el que una transición
Slide
saltaba a la posición de inicio incorrecta cuando se interrumpía. (aosp/2733729, b/297427333).
Actualización de dependencia
- La transición ahora se compila con la API 34.
Versión 1.5.0-alpha01
10 de mayo de 2023
Lanzamiento de androidx.transition:transition:1.5.0-alpha01
y androidx.transition:transition-ktx:1.5.0-alpha01
. Esta versión se desarrolló en una rama interna.
Nuevas funciones
- Las transiciones admiten el salto en el nivel de API 34 y versiones posteriores. Se agregó una nueva API a
TransitionManager
,controlDelayedTransition()
, que muestra unaTransisionSeekController
que permite buscar la transición.
Cambios en la API
TransitionManager
tiene un método nuevo,controlDelayedTransition()
, que permite que las aplicaciones controlen el progreso de las animaciones de transición en el nivel de API 34 y versiones posteriores. ElTransitionSeekController
que se muestra le permite al desarrollador saber cuándo la transición está lista para el salto, la duración de la animación y establecer la hora actual de la animación.controlDelayedTransition()
solo admite transiciones que anulanisSeekable()
para mostrar un valor verdadero.- Las transiciones tienen un método nuevo,
getRootTransition()
, que muestra la transición que contiene la transición actual o la transición actual si no está contenida por ninguna otra transición. Esto puede ser útil si el desarrollador necesita tener objetos de escucha para cuando comienza o termina toda la transición. TransitionListeners
ahora tiene nuevos objetos de escuchaonTransitionStart()
yonTransitionEnd()
que permiten al desarrollador saber si la transición comienza o termina en reversa o no. Esto puede ser importante para desarrollar transiciones buscables que tenganTransitionListeners
.
Correcciones de errores
- Las transiciones ahora copian su
TransitionListeners
cuando se clonan. Esto significa que agregar objetos de escucha nuevos durantecreateAnimator()
no afectará la transición raíz.
Versión 1.4.1
Versión 1.4.1
21 de abril de 2021
Lanzamiento de androidx.transition:transition:1.4.1
y androidx.transition:transition-ktx:1.4.1
. La versión 1.4.1 contiene estas confirmaciones.
Correcciones de errores
- Se corrigió un problema por el que la inicialización de un elemento
Transition
en un contenedor pausaba por accidente otras transiciones en ejecución en contenedores separados, lo que provocaba que esas otras transiciones nunca se finalizaran. (aosp/1664439, b/182845041)
Versión 1.4.0
Versión 1.4.0
27 de enero de 2021
Lanzamiento de androidx.transition:transition:1.4.0
y androidx.transition:transition-ktx:1.4.0
. La versión 1.4.0 contiene estas confirmaciones.
Cambios importantes desde la versión 1.3.0
- El artefacto
transition-ktx
presenta extensiones de Kotlin para agregar objetos de escucha a instancias de AndroidXTransition
. (b/138870873)
Versión 1.4.0-rc01
2 de diciembre de 2020
Lanzamiento de androidx.transition:transition:1.4.0-rc01
y androidx.transition:transition-ktx:1.4.0-rc01
sin modificaciones desde 1.4.0-beta01
. La versión 1.4.0-rc01 contiene estas confirmaciones.
Versión 1.4.0-beta01
22 de julio de 2020
Lanzamiento de androidx.transition:transition:1.4.0-beta01
y androidx.transition:transition-ktx:1.4.0-beta01
sin cambios desde 1.4.0-alpha01
. La versión 1.4.0-beta01 contiene estas confirmaciones.
Versión 1.4.0-alpha01
24 de junio de 2020
Lanzamiento de androidx.transition:transition:1.4.0-alpha01
y androidx.transition:transition-ktx:1.4.0-alpha01
. La versión 1.4.0-alpha01 contiene estas confirmaciones.
Nuevas funciones
- El artefacto
transition-ktx
presenta extensiones de Kotlin para agregar objetos de escucha a instancias de AndroidXTransition
. (b/138870873)
Versión 1.3.1
Versión 1.3.1
19 de febrero de 2020
Lanzamiento de androidx.transition:transition:1.3.1
. La versión 1.3.1 contiene estas confirmaciones.
Correcciones de errores
- Se corrigió el error por el que algunas vistas animadas se recortaban de manera incorrecta cuando se usaba ChangeTransform. (b/148798452)
Versión 1.3.0
Versión 1.3.0
22 de enero de 2020
Lanzamiento de androidx.transition:transition:1.3.0
. La versión 1.3.0 contiene estas confirmaciones.
Cambios importantes desde 1.2.0
- Mejoras de Fragment 1.2.0: se mejoró la integración con Fragment 1.2.0 para garantizar que la vista de Fragment no se destruya antes de que se complete la transición y que las transiciones se cancelen en el momento adecuado.
Versión 1.3.0-rc02
4 de diciembre de 2019
Lanzamiento de androidx.transition:transition:1.3.0-rc02
. La versión 1.3.0-rc02 contiene estas confirmaciones.
Correcciones de errores
- Se solucionó un problema en el que se marcaban las vistas como
INVISIBLE
por error después de mostrar un fragmento oculto. (b/70793925)
Versión 1.3.0-rc01
23 de octubre de 2019
Lanzamiento de androidx.transition:transition:1.3.0-rc01
sin cambios desde 1.3.0-beta01
. La versión 1.3.0-rc01 contiene estas confirmaciones.
Versión 1.3.0-beta01
9 de octubre de 2019
Lanzamiento de androidx.transition:transition:1.3.0-beta01
. La versión 1.3.0-beta01 contiene estas confirmaciones.
Nuevas funciones
- Se mejoró la integración con Fragment
1.2.0-beta01
para garantizar que la vista de Fragment no se destruya antes de que se complete la transición y que las transiciones se cancelen en el momento adecuado. (aosp/1119841)
Versión 1.2.0
Versión 1.2.0
9 de octubre de 2019
Lanzamiento de androidx.transition:transition:1.2.0
sin modificaciones desde 1.2.0-rc01. La versión 1.2.0 contiene estas confirmaciones.
Cambios importantes desde la versión 1.1.0
Debes usar esta versión si especificas el nivel de API 29. De lo contrario, algunas de las transiciones no funcionarán correctamente. En lugar de las llamadas de reflexión, esta versión usa los nuevos métodos públicos agregados en el nivel de API 29. Forma parte de las restricciones de nuestro trabajo con las interfaces que no son SDK.
Versión 1.2.0-rc01
5 de septiembre de 2019
Lanzamiento de androidx.transition:transition:1.2.0-rc01
sin modificaciones desde la versión 1.2.0-beta01
. Para conocer las confirmaciones incluidas en esta versión, consulta este artículo.
Versión 1.2.0-beta01
2 julio de 2019
Lanzamiento de androidx.transition:transition:1.2.0-beta01
. Para conocer las confirmaciones incluidas en esta versión, consulta este artículo.
Nuevas funciones
- Debes usar esta versión si especificas 29 como
targetSdkVersion
. De lo contrario, algunas de las transiciones no funcionarán correctamente. En lugar de las llamadas de reflexión, esta versión usa los nuevos métodos públicos agregados en el nivel de API 29. Forma parte de las restricciones de nuestro trabajo con las interfaces que no son SDK.
Versión 1.2.0-alpha01
7 de mayo de 2019
Lanzamiento de androidx.transition:transition:1.2.0-alpha01
.
Nuevas funciones
- Debes usar esta versión si especificas Q como
targetSdkVersion
. De lo contrario, algunas de las transiciones no funcionarán correctamente. En lugar de las llamadas de reflexión, esta versión usa los nuevos métodos públicos agregados en Q. Forma parte de las restricciones de nuestro trabajo con las interfaces que no son SDK.
Versión 1.1.0
Versión 1.1.0
2 julio de 2019
Lanzamiento de androidx.transition:transition:1.1.0
sin cambios desde 1.1.0-rc02
. Para conocer las confirmaciones incluidas en esta versión, consulta este artículo.
Versión 1.1.0-rc02
5 de junio de 2019
Lanzamiento de androidx.transition:transition:1.1.0-rc02
. Para conocer las confirmaciones incluidas en esta versión, consulta este vínculo.
Correcciones de errores
- Se realizó una corrección para que
TransitionManager.endTransitions()
funcione correctamente con transiciones dependientes. (aosp/946400)
Versión 1.1.0-rc01
7 de mayo de 2019
Lanzamiento de androidx.transition:transition:1.1.0-rc01
. Para conocer las confirmaciones incluidas en esta versión, consulta este artículo.
Versión 1.1.0-beta01
3 de abril de 2019
Lanzamiento de androidx.transition:transition:1.1.0-beta01
. Para conocer las confirmaciones incluidas en esta versión, consulta este vínculo.
Correcciones de errores
- Se corrigió un error relacionado con el almacenamiento en caché de
ViewGroupOverlay
enVisibility
, que se producía en el nivel de API 17 y en versiones anteriores. (aosp/937350)
Versión 1.1.0-alpha02
13 de marzo de 2019
Lanzamiento de androidx.transition:transition:1.1.0-alpha02
. Para obtener una lista completa de las confirmaciones incluidas en esta versión, consulta este vínculo.
Cambios en la API
- Se cambió el tipo de parámetro de método de
Scene.getCurrentScene()
deView
aViewGroup
.
Correcciones de errores
SidePropagation
no funciona cuando se proporciona un retraso adicional mediantesetStartDelay()
(b/119839526).ChangeImageTransform
aplica una matriz incorrecta cuando se interrumpe antes del nivel de API 21 (b/123226255).ChangeTransform
funciona incorrectamente en algunos casos antes del nivel de API 21 (b/125777978).
Versión 1.1.0-alpha01
3 de diciembre de 2018
Cambios en la API
- aosp/807055: Se hizo público el método
Scene.getCurrentScene(View)
. Te permite escribir una lógica condicional personalizada según el escenario actual.
Correcciones de errores
- Se solucionó una falla que se producía al usar
TransitionManager
para contraer/expandir elementos enRecyclerView
(b/37129527). - Se corrigió la animación incorrecta que se mostraba cuando se aplicaban dos transiciones de visibilidad (b/62629600).
- Se permitieron valores de anulación como interpolación y duración para los elementos secundarios de TransitionSet (b/64644617).
- También se corrigieron otros errores menores.