ListView
Le widget ListView
est utilisé pour afficher une liste défilable d'éléments dans une direction donnée, généralement verticalement. Il est très efficace car il ne rend que les éléments visibles à l'écran, ce qui le rend adapté à l'affichage de grandes listes d'éléments.
Voici un exemple d'utilisation du widget ListView
:
ListView(
children: <Widget>[
ListTile(
leading: Icon(Icons.star),
title: Text('Élément 1'),
subtitle: Text('Description de l\'élément 1'),
trailing: Icon(Icons.more_vert),
onTap: () {
// Action à effectuer lors du tap sur l'élément 1
},
),
ListTile(
leading: Icon(Icons.star),
title: Text('Élément 2'),
subtitle: Text('Description de l\'élément 2'),
trailing: Icon(Icons.more_vert),
onTap: () {
// Action à effectuer lors du tap sur l'élément 2
},
),
// Ajouter d'autres ListTiles pour plus d'éléments
],
)
Dans cet exemple, nous utilisons un ListView
pour afficher une liste de ListTile
, chacun représentant un élément de la liste. Chaque ListTile
peut contenir un titre, un sous-titre, une icône à gauche (leading) et une icône à droite (trailing), ainsi qu'une action à effectuer lorsqu'il est tapé (onTap
).
Le widget ListView
peut également être utilisé avec des constructeurs tels que ListView.builder
pour construire dynamiquement la liste en fonction des données, ou ListView.separated
pour ajouter des séparateurs entre les éléments de la liste.
Quelques propriétés
Voici quelques propriétés couramment utilisées avec le widget ListView
:
scrollDirection : Cette propriété définit la direction dans laquelle la liste doit défiler, soit
Axis.vertical
pour un défilement vertical (par défaut), soitAxis.horizontal
pour un défilement horizontal.shrinkWrap : Cette propriété définit si le
ListView
doit réduire sa taille pour s'adapter au contenu ou occuper toute la hauteur disponible. Elle est souvent utilisée avecListView
dans unColumn
pour éviter les erreurs de débordement.padding : Cette propriété définit la marge intérieure du
ListView
, qui est l'espace entre les bords duListView
et ses enfants.itemExtent : Cette propriété définit la hauteur fixe de chaque élément de la liste. Elle est utile lorsque tous les éléments de la liste ont la même hauteur, ce qui permet d'optimiser les performances en évitant de mesurer la hauteur de chaque élément.
physics : Cette propriété définit le comportement de défilement de la liste, comme la façon dont elle rebondit en fin de liste. Vous pouvez utiliser des classes comme
AlwaysScrollableScrollPhysics
,BouncingScrollPhysics
,ClampingScrollPhysics
, etc.controller : Cette propriété vous permet de contrôler le défilement de la liste en utilisant un
ScrollController
. Cela peut être utile pour faire défiler la liste vers un élément spécifique ou pour écouter les événements de défilement.
Last updated