Transition
Dernière mise à jour | Version stable | Version finale | Version bêta | Version alpha |
---|---|---|---|---|
30 juillet 2025 | 1.6.0 | - | - | 1.7.0-alpha01 |
Déclarer des dépendances
Pour ajouter une dépendance à Transition, vous devez ajouter le dépôt Maven de Google à votre projet. Pour en savoir plus, consultez la section Dépôt Maven de Google.
Ajoutez les dépendances correspondant aux artefacts dont vous avez besoin dans le fichier build.gradle
de votre application ou de votre module :
Groovy
dependencies { // Java language implementation implementation "androidx.transition:transition:1.6.0" // Kotlin implementation "androidx.transition:transition-ktx:1.6.0" }
Kotlin
dependencies { // Java language implementation implementation("androidx.transition:transition:1.6.0") // Kotlin implementation("androidx.transition:transition-ktx:1.6.0") }
Pour en savoir plus sur les dépendances, consultez Ajouter des dépendances de compilation.
Commentaires
Vos commentaires nous aident à améliorer Jetpack. N'hésitez pas à nous contacter si vous découvrez de nouveaux problèmes ou si vous avez des idées pour améliorer cette bibliothèque. Veuillez consulter les problèmes existants de cette bibliothèque avant d'en signaler un nouveau. Vous pouvez ajouter votre vote à un problème existant en cliquant sur le bouton en forme d'étoile.
Pour en savoir plus, consultez la documentation sur l'outil Issue Tracker.
Version 1.7
Version 1.7.0-alpha01
30 juillet 2025
Publication d'androidx.transition:transition:1.7.0-alpha01
et d'androidx.transition:transition-ktx:1.7.0-alpha01
. La version 1.7.0-alpha01 contient ces commits.
Correction de bugs
- Correction du plantage qui se produisait lorsque la vue était associée à une fenêtre avec un
windowId
nul. (I2ddf6)
Version 1.6
Version 1.6.0
23 avril 2025
Publication d'androidx.transition:transition:1.6.0
et d'androidx.transition:transition-ktx:1.6.0
. La version 1.6.0 contient ces commits.
Version 1.6.0-rc01
26 mars 2025
Publication d'androidx.transition:transition:1.6.0-rc01
et d'androidx.transition:transition-ktx:1.6.0-rc01
. La version 1.6.0-rc01 contient ces commits.
Version 1.6.0-beta01
12 mars 2025
Publication d'androidx.transition:transition:1.6.0-beta01
et d'androidx.transition:transition-ktx:1.6.0-beta01
sans modification par rapport à la dernière version alpha. La version 1.6.0-beta01 contient ces commits.
Version 1.6.0-alpha01
11 décembre 2024
Publication d'androidx.transition:transition:1.6.0-alpha01
et d'androidx.transition:transition-ktx:1.6.0-alpha01
. La version 1.6.0-alpha01 contient ces commits.
Nouvelles fonctionnalités
- La transition définit désormais le parent disjoint pour
ViewOverlays
utilisé pour animer ses transitions. Cela permet de résoudre les problèmes de propriétaires via le parent disjoint, ce qui signifie que vous pouvez désormais résoudre correctement lesViewModels
, les cycles de vie, etc. lors d'une transition. (I10a16, b/340894487, b/287484338)
Correction de bugs
- Cette bibliothèque utilise désormais les annotations de nullité JSpecify, qui sont de type "type-use". Les développeurs Kotlin doivent utiliser l'argument de compilateur suivant pour garantir une utilisation correcte :
-Xjspecify-annotations=strict
(il s'agit de la valeur par défaut à partir de la version 2.1.0 du compilateur Kotlin). (I1f54e, b/326456246) - Suppression de la présentation manuelle de l'accès aux nouvelles API de plate-forme, car cela se fait automatiquement via la modélisation d'API lorsque vous utilisez R8 avec AGP 7.3 ou version ultérieure (par exemple, R8 version 3.3) et pour toutes les versions lorsque vous utilisez AGP 8.1 ou version ultérieure (par exemple, D8 version 8.1). Les clients qui n'utilisent pas AGP sont invités à passer à la version 8.1 ou ultérieure de D8. Consultez cet article pour en savoir plus. (Ia60e0, b/345472586)
Version 1.5
Version 1.5.1
24 juillet 2024
Publication d'androidx.transition:transition:1.5.1
et d'androidx.transition:transition-ktx:1.5.1
. La version 1.5.1 contient ces commits.
Correction de bugs
- Correction d'un problème où les appels à
animateToStart()
ouanimateToEnd()
sur une transition pouvant être recherchée étaient ignorés si la transition n'avait pas été démarrée. (I44d96, b/338624457)
Version 1.5.0
1er mai 2024
Publication d'androidx.transition:transition:1.5.0
et d'androidx.transition:transition-ktx:1.5.0
. La version 1.5.0 contient ces commits.
Changements importants depuis la version 1.4.0
- Les transitions sont compatibles avec la recherche sur l'API 34 et versions ultérieures. Une nouvelle API a été ajoutée à
TransitionManager
,controlDelayedTransition()
, qui renvoie unTransitionSeekController
permettant de rechercher leTransition
. Cette fonctionnalité est utilisée par Fragment 1.7.0 pour rechercher automatiquement les transitions lors de l'utilisation du geste Retour prédictif. - Les transitions disposent d'une nouvelle méthode,
getRootTransition()
, qui renvoie la transition contenant la transition actuelle ou la transition actuelle si elle n'est contenue par aucune autre transition. Cela peut être utile si le développeur a besoin d'avoir des écouteurs pour le début ou la fin de la transition. TransitionListeners
dispose désormais de nouveaux écouteursonTransitionStart()
etonTransitionEnd()
qui permettent au développeur de savoir si la transition commence ou se termine en sens inverse ou non. Cela peut être important pour développer des transitions pouvant être recherchées et comportantTransitionListeners
.
Version 1.5.0-rc02
17 avril 2024
Publication d'androidx.transition:transition:1.5.0-rc02
et d'androidx.transition:transition-ktx:1.5.0-rc02
. La version 1.5.0-rc02 contient ces commits.
Mise à jour de la dépendance
- Mise à jour de la dépendance Fragment vers la version 1.7.0-rc02, qui corrige un bug entraînant un plantage lorsqu'un élément partagé non séquentiel était ajouté à une transaction dans laquelle toutes les autres transitions étaient séquentielles.
Version 1.5.0-rc01
3 avril 2024
Publication d'androidx.transition:transition:1.5.0-rc01
et d'androidx.transition:transition-ktx:1.5.0-rc01
. La version 1.5.0-rc01 contient ces commits.
Version 1.5.0-beta01
20 mars 2024
Publication d'androidx.transition:transition:1.5.0-beta01
et d'androidx.transition:transition-ktx:1.5.0-beta01
. La version 1.5.0-beta01 contient ces commits.
Correction de bugs
- Correction d'un problème dans les fragments où l'interruption des transitions entrantes avec un geste de prévisualisation du Retour détruisait la vue entrante, ce qui pouvait laisser un écran vide. (Id3f22, b/319531491)
Version 1.5.0-alpha06
10 janvier 2024
Publication d'androidx.transition:transition:1.5.0-alpha06
et d'androidx.transition:transition-ktx:1.5.0-alpha06
. Liste des commits de la version 1.5.0-alpha06
Correction de bugs
- Lorsque
TransitionSeekController.animateToStart()
est utilisé,onTransitionEnd()
est désormais appelé pour lesTransitionListeners
ajoutés après leRunnable
donné paranimateToStart()
. (Ic6a55, b/307624554)
Mise à jour de la dépendance
- La dépendance Fragment a été mise à jour vers
1.7.0-alpha08
.
Version 1.5.0-alpha05
29 novembre 2023
Publication d'androidx.transition:transition:1.5.0-alpha05
et d'androidx.transition:transition-ktx:1.5.0-alpha05
. Liste des commits de la version 1.5.0-alpha05
Correction de bugs
- Correction d'une
NullPointerException
causée par la définition d'une transition d'élément partagé sans définir également deenter/exitTransition
. (I8472b) - Correction d'un problème qui empêchait
animateToStart()
avecSlide()
de ramener la vue à la position de départ (I698f4, b/300157785) - Correction du problème de réentrance dans la transition qui empêchait l'annulation. (Iddcce, b/308379201)
Version 1.5.0-alpha04
4 octobre 2023
Publication d'androidx.transition:transition:1.5.0-alpha04
et d'androidx.transition:transition-ktx:1.5.0-alpha04. Liste des commits de la version 1.5.0-alpha04
Modifications apportées à l'API
- Modification destructive : la méthode
animateToStart()
utilise désormais unRunnable
qui doit être utilisé pour rétablir l'état d'origine des vues en transition.
Version 1.5.0-alpha03
20 septembre 2023
Publication d'androidx.transition:transition:1.5.0-alpha03
et d'androidx.transition:transition-ktx:1.5.0-alpha03
. Liste des commits de la version 1.5.0-alpha03
Nouvelles fonctionnalités
- Transition est désormais compatible avec les animations de prévisualisation du Retour dans l'application sur les appareils Android 14 lorsqu'il est utilisé avec Fragment
1.7.0-alpha05
.
Correction de bugs
- Correction d'un bug d'interruption de la transition de diapositive. Lorsqu'une transition de diapositive interrompait une transition d'entrée pour supprimer une vue, elle passait à une position incorrecte. (I946f8, b/297427333)
Version 1.5.0-alpha02
6 septembre 2023
Publication d'androidx.transition:transition:1.5.0-alpha02
et d'androidx.transition:transition-ktx:1.5.0-alpha02
. Liste des commits de la version 1.5.0-alpha02
Nouvelles fonctionnalités
TransitionSeekController
vous permet désormais de définir la progression sous forme de fraction de la durée totale viasetCurrentFragment()
. (aosp/2647607)TransitionSeekController
permet désormais d'observer la progression lors de l'utilisation deanimateToStart()
etanimateToEnd()
en appelantaddOnProgressChangedListener
. (aosp/2647607)- Ajout de
TransitionManager.seekTo()
pour permettre l'utilisation de scènes pour rechercher des transitions. (aosp/2647607) - Ajout d'animations basées sur la physique aux transitions de recherche. Il utilise un suivi de la vitesse à une dimension pour suivre la progression du changement avec
setCurrentFraction()
ousetCurrentPlayTimeMillis()
et l'utilise pour la vitesse initiale deanimateToStart
etanimateToEnd
. (aosp/2647607)
Correction de bugs
- Correction d'un scintillement lors de la recherche d'un
AutoTransition
. (aosp/2643369) - Correction d'un problème où une transition
Slide
sautait à la mauvaise position de départ lorsqu'elle était interrompue. (aosp/2733729, b/297427333)
Mise à jour de la dépendance
- Transition est désormais compilé avec l'API 34.
Version 1.5.0-alpha01
10 mai 2023
Publication d'androidx.transition:transition:1.5.0-alpha01
et d'androidx.transition:transition-ktx:1.5.0-alpha01
. Cette version est développée dans une branche interne.
Nouvelles fonctionnalités
- Les transitions sont compatibles avec la recherche sur l'API 34 et versions ultérieures. Une nouvelle API a été ajoutée à
TransitionManager
,controlDelayedTransition()
, qui renvoie unTransisionSeekController
permettant de rechercher la transition.
Modifications apportées à l'API
TransitionManager
dispose d'une nouvelle méthode,controlDelayedTransition()
, qui permet aux applications de contrôler la progression des animations de transition sur l'API 34 et versions ultérieures. L'TransitionSeekController
renvoyé indique au développeur quand la transition est prête pour la recherche, la durée de l'animation et permet de définir l'heure actuelle de l'animation.controlDelayedTransition()
n'accepte que les transitions qui remplacentisSeekable()
pour renvoyer "true".- Les transitions disposent d'une nouvelle méthode,
getRootTransition()
, qui renvoie la transition contenant la transition actuelle ou la transition actuelle si elle n'est contenue par aucune autre transition. Cela peut être utile si le développeur a besoin d'avoir des écouteurs pour le début ou la fin de la transition. TransitionListeners
dispose désormais de nouveaux écouteursonTransitionStart()
etonTransitionEnd()
qui permettent au développeur de savoir si la transition commence ou se termine en sens inverse ou non. Cela peut être important pour développer des transitions pouvant être recherchées et comportantTransitionListeners
.
Correction de bugs
- Les transitions copient désormais leur
TransitionListeners
lorsqu'elles sont clonées. Cela signifie que l'ajout de nouveaux écouteurs pendantcreateAnimator()
n'affectera pas la transition racine.
Version 1.4.1
Version 1.4.1
21 avril 2021
Publication d'androidx.transition:transition:1.4.1
et androidx.transition:transition-ktx:1.4.1
. Liste des commits de la version 1.4.1
Corrections de bugs
- Correction d'un problème pour lequel le démarrage d'une
Transition
dans un conteneur mettait par inadvertance en pause les autres transitions en cours d'exécution dans des conteneurs distincts, ce qui empêchait les autres transitions de se terminer (aosp/1664439, b/182845041)
Version 1.4.0
Version 1.4.0
27 janvier 2021
Publication d'androidx.transition:transition:1.4.0
et androidx.transition:transition-ktx:1.4.0
. Liste des commits de la version 1.4.0
Principales modifications depuis la version 1.3.0
- L'artefact
transition-ktx
introduit des extensions Kotlin permettant d'ajouter des écouteurs aux instancesTransition
d'AndroidX. (b/138870873)
Version 1.4.0-rc01
2 décembre 2020
Publication d'androidx.transition:transition:1.4.0-rc01
et androidx.transition:transition-ktx:1.4.0-rc01
sans aucune modification par rapport à la version 1.4.0-beta01
. Liste des commits de la version 1.4.0-rc01
Version 1.4.0-beta01
22 juillet 2020
Publication d'androidx.transition:transition:1.4.0-beta01
et androidx.transition:transition-ktx:1.4.0-beta01
sans aucune modification par rapport à la version 1.4.0-alpha01
. Liste des commits de la version 1.4.0-beta01
Version 1.4.0-alpha01
24 juin 2020
Publication d'androidx.transition:transition:1.4.0-alpha01
et androidx.transition:transition-ktx:1.4.0-alpha01
. Liste des commits de la version 1.4.0-alpha01
Nouvelles fonctionnalités
- L'artefact
transition-ktx
introduit des extensions Kotlin permettant d'ajouter des écouteurs aux instancesTransition
d'AndroidX. (b/138870873)
Version 1.3.1
Version 1.3.1
19 février 2020
Publication d'androidx.transition:transition:1.3.1
. Liste des commits de la version 1.3.1
Corrections de bugs
- Correction d'un bug pour lequel certaines vues animées étaient mal tronquées lorsque ChangeTransform était utilisé (b/148798452)
Version 1.3.0
Version 1.3.0
22 janvier 2020
Publication d'androidx.transition:transition:1.3.0
. Liste des commits de la version 1.3.0
Modifications importantes depuis la version 1.2.0
- Améliorations pour Fragment 1.2.0 : amélioration de l'intégration avec Fragment 1.2.0 afin de s'assurer que la vue de Fragment n'est pas détruite avant la fin de la transition et que les transitions sont annulées au moment approprié
Version 1.3.0-rc02
4 décembre 2019
Publication d'androidx.transition:transition:1.3.0-rc02
. Liste des commits de la version 1.3.0-rc02
Corrections de bugs
- Correction d'un problème pour lequel des vues étaient marquées comme
INVISIBLE
par erreur après l'affichage d'un fragment masqué. (b/70793925)
Version 1.3.0-rc01
23 octobre 2019
Publication d'androidx.transition:transition:1.3.0-rc01
sans aucune modification par rapport à la version 1.3.0-beta01
. Liste des commits de la version 1.3.0-rc01
Version 1.3.0-beta01
9 octobre 2019
Publication d'androidx.transition:transition:1.3.0-beta01
. Liste des commits de la version 1.3.0-beta01
Nouvelles fonctionnalités
- Amélioration de l'intégration avec Fragment
1.2.0-beta01
afin de s'assurer que la vue de Fragment n'est pas détruite avant la fin de la transition et que les transitions sont annulées au moment approprié. (aosp/1119841)
Version 1.2.0
Version 1.2.0
9 octobre 2019
Publication d'androidx.transition:transition:1.2.0
sans aucune modification par rapport à la version 1.2.0-rc01. Liste des commits de la version 1.2.0
Changements importants depuis la version 1.1.0
Utilisez cette version si vous ciblez le niveau d'API 29. Sinon, certaines des transitions ne fonctionneront pas correctement. Au lieu des appels de réflexion, cette version utilise les nouvelles méthodes publiques ajoutées au niveau d'API 29. Cela fait partie de nos efforts de restriction concernant les interfaces autres que SDK.
Version 1.2.0-rc01
5 septembre 2019
Publication d'androidx.transition:transition:1.2.0-rc01
sans aucune modification par rapport à la version 1.2.0-beta01
. Les commits inclus dans cette version sont disponibles sur cette page.
Version 1.2.0-beta01
2 juillet 2019
Publication d'androidx.transition:transition:1.2.0-beta01
. Les commits inclus dans cette version sont disponibles sur cette page.
Nouvelles fonctionnalités
- Utilisez cette version si vous spécifiez la
targetSdkVersion
29. Sinon, certaines des transitions ne fonctionneront pas correctement. Au lieu des appels de réflexion, cette version utilise les nouvelles méthodes publiques ajoutées au niveau d'API 29. Cela fait partie de nos efforts de restriction concernant les interfaces autres que SDK.
Version 1.2.0-alpha01
7 mai 2019
Publication d'androidx.transition:transition:1.2.0-alpha01
.
Nouvelles fonctionnalités
- Utilisez cette version si vous spécifiez la
targetSdkVersion
Q. Sinon, certaines des transitions ne fonctionneront pas correctement. Au lieu des appels de réflexion, cette version utilise les nouvelles méthodes publiques ajoutées à la version Q. Cela fait partie de nos efforts de restriction concernant les interfaces autres que SDK.
Version 1.1.0
Version 1.1.0
2 juillet 2019
Publication d'androidx.transition:transition:1.1.0
sans aucune modification par rapport à la version 1.1.0-rc02
. Les commits inclus dans cette version sont disponibles sur cette page.
Version 1.1.0-rc02
5 juin 2019
Publication d'androidx.transition:transition:1.1.0-rc02
. Les commits inclus dans cette version sont disponibles sur cette page.
Corrections de bugs
- Correction pour que
TransitionManager.endTransitions()
fonctionne correctement avec les transitions dépendantes. (aosp/946400)
Version 1.1.0-rc01
7 mai 2019
Publication d'androidx.transition:transition:1.1.0-rc01
. Les commits inclus dans cette version sont disponibles sur cette page.
Version 1.1.0-beta01
3 avril 2019
Publication d'androidx.transition:transition:1.1.0-beta01
. Les commits inclus dans cette version sont disponibles sur cette page.
Corrections de bugs
- Correction d'un bug de mise en cache de
ViewGroupOverlay
dansVisibility
, survenant au niveau d'API 17 ou inférieur (aosp/937350)
Version 1.1.0-alpha02
13 mars 2019
Publication d'androidx.transition:transition:1.1.0-alpha02
. La liste complète des commits inclus dans cette version est disponible sur cette page.
Modifications apportées à l'API
- Le type du paramètre de méthode de
Scene.getCurrentScene()
est passé deView
àViewGroup
.
Corrections de bugs
SidePropagation
ne fonctionne pas si un délai supplémentaire est fourni viasetStartDelay()
(b/119839526).ChangeImageTransform
applique une matrice incorrecte lorsqu'elle est interrompue dans une version antérieure à l'API 21 (b/123226255).ChangeTransform
ne fonctionne pas correctement dans certains cas avant l'API 21 (b/125777978).
Version 1.1.0-alpha01
3 décembre 2018
Modifications apportées à l'API
- aosp/807055 : méthode
Scene.getCurrentScene(View)
rendue publique. Elle vous permet d'écrire une logique conditionnelle personnalisée en fonction d'une scène en cours.
Corrections de bugs
- Résolution du plantage qui survenait lors de l'utilisation de
TransitionManager
pour réduire/développer un élément dansRecyclerView
(b/37129527) - Correction de l'animation incorrecte lorsque deux transitions de visibilité étaient appliquées (b/62629600).
- Autorisation des valeurs de remplacement telles que la durée et l'interpolateur pour les enfants de TransitionSet (b/64644617)
- Correction de nombreux autres bugs mineurs