Un état sélectionné fournit un repère visuel clair pour aider les utilisateurs à comprendre quel élément d'UI est actuellement sélectionné. Tous les composants Material 3 interactifs fournissent par défaut des indications de focus intégrées.
Indication du focus dans la thématisation Material
Les composants Material utilisent la fonction ripple et LocalIndication pour dessiner les changements d'état visuel.
Pour associer un retour d'informations standard Material sur la sélection à un composant personnalisé :
- Créez un
MutableInteractionSourceà l'aide deremember { MutableInteractionSource() }. - Transmettez la source d'interaction au modificateur
indication, ainsi queripple().
val interactionSource = remember { MutableInteractionSource() } Box( modifier = Modifier .clickable( interactionSource = interactionSource, indication = null ) { /* onClick */ } .indication( interactionSource = interactionSource, indication = ripple() ) ) { Text("Custom component with Material ripple") }
Implémenter des indications de sélection personnalisées
Pour les repères visuels personnalisés (tels que la mise à l'échelle, les bordures ou les effets de lueur) :
- Créez un
IndicationNodeFactory. - Observez les interactions de sélection émises par l'élément
InteractionSource. - Appliquez l'indication personnalisée à l'aide du modificateur
indication.
var interactionSource = remember { MutableInteractionSource() } Card( modifier = Modifier .clickable( interactionSource = interactionSource, indication = MyHighlightIndication, enabled = true, onClick = { } ) ) { Text("hello") }
Recommandations personnalisées
- Remarque : Le texte du lien s'affiche lorsque JavaScript est désactivé
- Cibles de sélection
- Ordre de balayage du focus
- Réagir à la mise au point