Fragments

Restez organisé à l'aide des collections Enregistrez et classez les contenus selon vos préférences.

Un Fragment représente une partie réutilisable de l'UI de votre application. Un fragment définit et gère sa propre mise en page, a son propre cycle de vie et peut gérer ses propres événements d'entrée. Ils ne peuvent pas être autonomes : ils doivent être hébergés par une activité ou un autre fragment. La hiérarchie des vues du fragment fait partie de la hiérarchie des vues de l'hôte. On dit aussi qu'elle s'y associe.

Modularité

Les fragments, qui vous permettent de diviser l'interface utilisateur de votre activité en éléments distincts, assurent la modularité et la réutilisation. Les activités sont le réceptacle idéal des éléments globaux liés à l'interface utilisateur de votre application, tels qu'un panneau de navigation. À l'inverse, les fragments conviennent davantage à la définition et à la gestion de l'interface utilisateur d'un seul écran ou d'une partie de l'écran.

Prenons l'exemple d'une application qui réagit à différentes tailles d'écran. Sur les grands écrans, elle doit afficher un panneau de navigation statique et une liste en mode Grille. Sur les petits écrans, elle doit afficher une barre de navigation inférieure et une liste linéaire. La gestion de toutes ces variantes d'activité peut se révéler difficile. Toutefois, la séparation des éléments de navigation du contenu facilite ce processus. L'activité se charge ensuite d'afficher l'UI de navigation appropriée, tandis que le fragment affiche la liste avec la mise en page adéquate.

Deux versions du même écran sur différentes tailles d'écran.
Figure 1. Deux versions du même écran sur différentes tailles d'écran. Sur la gauche, un grand écran contient un panneau de navigation contrôlé par l'activité et une liste sous forme de grille contrôlée par le fragment. Sur la droite, un petit écran contient une barre de navigation inférieure contrôlée par l'activité et une liste linéaire contrôlée par le fragment.

La division de l'UI en fragments facilite la modification de l'apparence de votre activité au moment de l'exécution. Lorsque votre activité est à l'état de cycle de vie STARTED ou à un niveau supérieur, des fragments peuvent être ajoutés, remplacés ou supprimés. Vous pouvez conserver un enregistrement de ces modifications dans une pile "Retour" gérée par l'activité, ce qui permettra d'annuler ces modifications.

Vous pouvez utiliser plusieurs instances de la même classe de fragment dans la même activité, dans plusieurs activités ou même en tant qu'enfant d'un autre fragment. Toutefois, vous ne devez fournir un fragment qu'avec la logique nécessaire pour gérer sa propre UI. Évitez de dépendre d'un fragment ou de le manipuler pour en créer un autre.

Étapes suivantes

Pour plus de documentation et de ressources sur les fragments, consultez les sections suivantes.

Premiers pas

Autres sujets

Exemples

Vidéos