Uno stato attivo fornisce un indicatore visivo chiaro per aiutare gli utenti a capire quale elemento UI ha attualmente lo stato attivo. Tutti i componenti interattivi di Material 3 forniscono indicazioni di stato attivo integrate per impostazione predefinita.
Indicazione di focus del tema di Material
I componenti Material utilizzano la funzione ripple e LocalIndication
per disegnare le modifiche dello stato visivo.
Per allegare il feedback standard sullo stato attivo di Material a un componente personalizzato:
- Crea un
MutableInteractionSourceutilizzandoremember { MutableInteractionSource() }. - Passa l'origine dell'interazione al modificatore
indication, insieme aripple().
val interactionSource = remember { MutableInteractionSource() } Box( modifier = Modifier .clickable( interactionSource = interactionSource, indication = null ) { /* onClick */ } .indication( interactionSource = interactionSource, indication = ripple() ) ) { Text("Custom component with Material ripple") }
Implementa indicatori di selezione personalizzati
Per gli indicatori visivi personalizzati (come ridimensionamento, bordi o effetti di luce):
- Crea un
IndicationNodeFactory. - Osserva le interazioni di stato attivo generate dall'elemento
InteractionSource. - Applica l'indicazione personalizzata utilizzando il modificatore
indication.
var interactionSource = remember { MutableInteractionSource() } Card( modifier = Modifier .clickable( interactionSource = interactionSource, indication = MyHighlightIndication, enabled = true, onClick = { } ) ) { Text("hello") }
Consigliati per te
- Nota: il testo del link viene visualizzato quando JavaScript è disattivato
- Target di messa a fuoco
- Ordine di spostamento dello stato attivo
- Reagisci per mettere a fuoco