Un état de sélection fournit un repère visuel clair pour aider les utilisateurs à comprendre quel élément de l'UI détient actuellement le focus d'entrée. Tous les composants interactifs Material 3 fournissent des indications de focus intégrées par défaut.
Indication de sélection du thème Material
Les composants Material utilisent la fonction ripple et LocalIndication pour dessiner les changements d'état visuels.
Pour associer un retour de focus Material standard à un composant personnalisé :
- Créez un
MutableInteractionSourceà l'aide deremember { MutableInteractionSource() }. - Transmettez la source d'interaction au modificateur
indication, en plus deripple().
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 focus personnalisées
Pour les repères visuels personnalisés (comme la mise à l'échelle, les bordures ou les effets lumineux) :
- Créez un
IndicationNodeFactory. - Observez les interactions de focus émises par le
InteractionSourcede l'élément. - 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 mise au point
- Ordre de balayage du focus
- Réagir à la mise au point