Un bouton d'action flottant (FAB) est un bouton à forte intensité qui permet à l'utilisateur d'effectuer une action principale dans une application. Il favorise une action unique et ciblée qui constitue le chemin le plus courant qu'un utilisateur peut emprunter. Il se trouve généralement en bas à droite de l'écran.
Voici trois cas d'utilisation dans lesquels vous pouvez utiliser un bouton d'action flottant:
- Créer un élément: dans une application de prise de notes, un bouton d'action flottant peut être utilisé pour créer rapidement une note.
- Ajouter un contact: dans une application de chat, un bouton d'action flottant peut ouvrir une interface permettant à l'utilisateur d'ajouter une personne à une conversation.
- Centrer la position: dans une interface de carte, un bouton d'action flottant peut centrer la carte sur la position actuelle de l'utilisateur.
Dans Material Design, il existe quatre types de boutons d'action flottants:
- Bouton d'action flottant: bouton d'action flottant de taille ordinaire.
- Petit bouton d'action flottant: bouton d'action flottant plus petit.
- Grand bouton d'action flottant: bouton d'action flottant plus grand.
- Bouton d'action flottant étendu: bouton d'action flottant qui contient plus qu'une simple icône.
Compatibilité des versions
Cette implémentation nécessite que la version minimale du SDK de votre projet soit définie sur le niveau d'API 21 ou supérieur.
Dépendances
Kotlin
implementation(platform("androidx.compose:compose-bom:2025.01.01"))
Groovy
implementation platform('androidx.compose:compose-bom:2025.01.01')
Créer un bouton d'action flottant de base
Pour créer un bouton d'action flottant général, utilisez le composable de base FloatingActionButton
:
@Composable fun Example(onClick: () -> Unit) { FloatingActionButton( onClick = { onClick() }, ) { Icon(Icons.Filled.Add, "Floating action button.") } }
Résultat
![Bouton d'action flottant standard avec des coins arrondis, une ombre et une icône "Ajouter".](https://developer.android.google.cn/static/develop/ui/compose/images/components/fab.png?hl=fr)
Créer un petit bouton d'action flottant
Pour créer un petit bouton d'action flottant, utilisez le composable SmallFloatingActionButton
. L'exemple suivant montre comment procéder, en ajoutant des couleurs personnalisées.
@Composable fun SmallExample(onClick: () -> Unit) { SmallFloatingActionButton( onClick = { onClick() }, containerColor = MaterialTheme.colorScheme.secondaryContainer, contentColor = MaterialTheme.colorScheme.secondary ) { Icon(Icons.Filled.Add, "Small floating action button.") } }
Résultat
![Implémentation de SmallFloatingActionButton contenant une icône "Ajouter".](https://developer.android.google.cn/static/develop/ui/compose/images/components/fab-small.png?hl=fr)
Créer un bouton d'action flottant de grande taille
Pour créer un grand bouton d'action flottant, utilisez le composable LargeFloatingActionButton
. Ce composable n'est pas très différent des autres exemples, à l'exception du fait qu'il génère un bouton plus grand.
Voici une implémentation simple d'un grand bouton d'action flottant.
@Composable fun LargeExample(onClick: () -> Unit) { LargeFloatingActionButton( onClick = { onClick() }, shape = CircleShape, ) { Icon(Icons.Filled.Add, "Large floating action button") } }
Résultat
![Implémentation de LargeFloatingActionButton contenant une icône "Ajouter".](https://developer.android.google.cn/static/develop/ui/compose/images/components/fab-large.png?hl=fr)
Créer un bouton d'action flottant étendu
Vous pouvez créer des boutons d'action flottants plus complexes avec le composable ExtendedFloatingActionButton
. La principale différence entre et FloatingActionButton
est qu'il dispose de paramètres icon
et text
dédiés. Ils vous permettent de créer un bouton avec un contenu plus complexe qui s'adapte à son contenu de manière appropriée.
L'extrait de code suivant montre comment implémenter ExtendedFloatingActionButton
, avec des exemples de valeurs transmises pour icon
et text
.
@Composable fun ExtendedExample(onClick: () -> Unit) { ExtendedFloatingActionButton( onClick = { onClick() }, icon = { Icon(Icons.Filled.Edit, "Extended floating action button.") }, text = { Text(text = "Extended FAB") }, ) }
Résultat
![Implémentation d'un ExtendedFloatingActionButton qui affiche le texte "Bouton étendu" et une icône de modification.](https://developer.android.google.cn/static/develop/ui/compose/images/components/fab-extended.png?hl=fr)
Points essentiels
Bien qu'il existe plusieurs composables que vous pouvez utiliser pour créer des boutons d'action flottants conformes à Material Design, leurs paramètres ne diffèrent pas beaucoup. Voici quelques-uns des paramètres clés à prendre en compte:
onClick
: fonction appelée lorsque l'utilisateur appuie sur le bouton.containerColor
: couleur du bouton.contentColor
: couleur de l'icône.
z## Collections contenant ce guide
Ce guide fait partie de ces collections de guides rapides sélectionnées qui couvrent des objectifs de développement Android plus larges:
![](https://developer.android.google.cn/static/images/quick-guides/collection-illustration.png?hl=fr)