Transition

Animez des mouvements dans l'interface utilisateur avec des mises en page de début et de fin.
Dernière mise à jour Version stable Version finale Version bêta Version alpha
24 juillet 2024 1.5.1 - - -

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.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")
}

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.

Signaler un nouveau problème

Pour en savoir plus, consultez la documentation sur l'outil Issue Tracker.

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() ou animateToEnd() sur une transition pouvant être recherchée étaient ignorés si la transition n'était pas 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

  • Prise en charge des transitions sur l'API 34 et versions ultérieures. Une nouvelle API a été ajoutée à TransitionManager, controlDelayedTransition(), qui renvoie un TransitionSeekController qui permet de rechercher Transition. Cette fonctionnalité est utilisée par Fragment 1.7.0 pour rechercher automatiquement des transitions lors de l'utilisation de la prévisualisation du geste Retour.
  • Les transitions ont une nouvelle méthode, getRootTransition(), qui renvoie la transition contenant la transition actuelle ou la transition actuelle si elle n'est contenue dans aucune autre transition. Cela peut être utile si le développeur a besoin d'écouteurs pour le début ou la fin de l'ensemble de la transition.
  • TransitionListeners dispose désormais de nouveaux écouteurs onTransitionStart() et onTransitionEnd() 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 faciles à trouver qui comportent des TransitionListeners.

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 de Fragment vers la version 1.7.0-rc02. Correction d'un bug qui provoquait un plantage si un élément partagé ne pouvant pas être recherché était ajouté à une transaction où toutes les autres transitions pouvaient être trouvées.

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 la prévisualisation du geste Retour détruisait la vue entrante, laissant potentiellement 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é par onTransitionEnd() après l'objet Runnable de animateToStart() ajouté.TransitionListeners (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é et par l'échec de la définition d'une enter/exitTransition (I8472b).
  • Correction d'un problème où animateToStart() avec Slide() ne parvenait pas à replacer la vue à sa position de départ. (I698f4, b/300157785)
  • Correction d'un problème de réentrée dans Transition qui entraînait l'annulation de 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 un Runnable qui doit être utilisé pour renvoyer les vues de transition à leur état d'origine.

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 pour la 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 du bug d'interruption de la transition entre les diapositives. Lorsqu'une transition de diapositive interrompait une transition d'entrée pour supprimer une vue, la position de celle-ci était 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 via setCurrentFragment(). (aosp/2647607).
  • TransitionSeekController permet désormais d'observer la progression lorsque vous utilisez animateToStart() et animateToEnd() en appelant addOnProgressChangedListener. (aosp/2647607).
  • Ajout de TransitionManager.seekTo() pour permettre l'utilisation de scènes permettant de rechercher des transitions. (aosp/2647607).
  • Ajout d'animations basées sur la physique pour rechercher des transitions. Il utilise un outil de suivi de la vitesse unidimensionnel pour suivre l'évolution de la progression avec setCurrentFraction() ou setCurrentPlayTimeMillis(), et l'utilise pour la vitesse initiale de animateToStart et animateToEnd. (aosp/2647607).

Correction de bugs

  • Correction d'un scintillement lors de la recherche d'une AutoTransition. (aosp/2643369).
  • Correction d'un problème qui entraînait le renvoi d'une transition Slide à la mauvaise position de départ en cas d'interruption. (aosp/2733729, b/297427333).

Mise à jour de la dépendance

  • Transition est maintenant 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

  • Prise en charge des transitions sur l'API 34 et versions ultérieures. Une nouvelle API a été ajoutée à TransitionManager, controlDelayedTransition(), qui renvoie un TransisionSeekController qui permet 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 dans l'API 34 ou version ultérieure. Le TransitionSeekController renvoyé indique au développeur quand la transition est prête pour la recherche et indique la durée de l'animation. Il permet également de définir l'heure actuelle de l'animation. Seules les transitions qui ignorent isSeekable() pour renvoyer la valeur "true" sont prises en charge par controlDelayedTransition().
  • Les transitions ont une nouvelle méthode, getRootTransition(), qui renvoie la transition contenant la transition actuelle ou la transition actuelle si elle n'est contenue dans aucune autre transition. Cela peut être utile si le développeur a besoin d'écouteurs pour le début ou la fin de l'ensemble de la transition.
  • TransitionListeners dispose désormais de nouveaux écouteurs onTransitionStart() et onTransitionEnd() 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 faciles à trouver qui comportent des TransitionListeners.

Correction de bugs

  • Les transitions copient désormais leur TransitionListeners lorsqu'elles sont clonées. Cela signifie que l'ajout d'écouteurs pendant createAnimator() 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 instances Transition 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 instances Transition 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 dans Visibility, 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é de View à ViewGroup.

Corrections de bugs

  • SidePropagation ne fonctionne pas si un délai supplémentaire est fourni via setStartDelay() (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 dans RecyclerView (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