Un estado de enfoque proporciona una señal visual clara para ayudar a los usuarios a comprender qué elemento de la IU tiene el enfoque de entrada en un momento determinado. Todos los componentes interactivos de Material 3 proporcionan indicaciones de enfoque integradas de forma predeterminada.
Indicación de enfoque del tema de Material
Los componentes de Material usan la función ripple y LocalIndication para dibujar los cambios de estado visual.
Para adjuntar comentarios de enfoque de Material estándar a un componente personalizado, haz lo siguiente:
- Crea un
MutableInteractionSourceconremember { MutableInteractionSource() }. - Pasa la fuente de interacción al modificador
indication, junto conripple().
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 indicaciones de enfoque personalizadas
Para las pistas visuales personalizadas (como el ajuste de escala, los bordes o los efectos de resplandor), haz lo siguiente:
- Crea un
IndicationNodeFactory. - Observa las interacciones de enfoque que emite el
InteractionSourcedel elemento. - Aplica la indicación personalizada con el modificador
indication.
var interactionSource = remember { MutableInteractionSource() } Card( modifier = Modifier .clickable( interactionSource = interactionSource, indication = MyHighlightIndication, enabled = true, onClick = { } ) ) { Text("hello") }
Recomendaciones para ti
- Nota: El texto del vínculo se muestra cuando JavaScript está desactivado
- Objetivos de enfoque
- Orden de recorrido del enfoque
- React to focus