מצב מיקוד מספק רמז ויזואלי ברור שעוזר למשתמשים להבין איזה רכיב בממשק המשתמש נמצא כרגע במיקוד הקלט. כל הרכיבים האינטראקטיביים של Material 3 מספקים כברירת מחדל אינדיקציות מובנות של מיקוד.
אינדיקטור המיקוד של ערכת העיצוב Material
רכיבי Material משתמשים בפונקציה ripple וב-LocalIndication כדי לצייר שינויים במצב החזותי.
כדי לצרף משוב רגיל על התמקדות בתוכן של Material לרכיב מותאם אישית:
- יצירת
MutableInteractionSourceבאמצעותremember { MutableInteractionSource() }. - מעבירים את מקור האינטראקציה לשינוי
indication, לצדripple().
val interactionSource = remember { MutableInteractionSource() } Box( modifier = Modifier .clickable( interactionSource = interactionSource, indication = null ) { /* onClick */ } .indication( interactionSource = interactionSource, indication = ripple() ) ) { Text("Custom component with Material ripple") }
הטמעה של אינדיקטורים מותאמים אישית לסימון המיקוד
לרמזים ויזואליים בהתאמה אישית (כמו שינוי גודל, גבולות או אפקטים של זוהר):
- יוצרים
IndicationNodeFactory. - שימו לב לאינטראקציות של המיקוד שמופקות על ידי
InteractionSourceשל הרכיב. - משתמשים במחרוזת
indicationכדי להחיל את ההגדרה המותאמת אישית.
var interactionSource = remember { MutableInteractionSource() } Card( modifier = Modifier .clickable( interactionSource = interactionSource, indication = MyHighlightIndication, enabled = true, onClick = { } ) ) { Text("hello") }
מומלץ בשבילך
- הערה: טקסט הקישור מוצג כש-JavaScript מושבת
- יעדי התמקדות
- סדר מעבר בין רכיבים
- תגובה למיקוד