כל רכיבי Glimmer של Jetpack Compose מיועדים לעבוד עם שיטות קלט רגילות, כמו הקשה או החלקה על משטח המגע של משקפי ה-AI, וגם לקבל פקודות קלט ברמה נמוכה שספציפיות לחומרה של משקפי ה-AI. רכיבי Glimmer של Jetpack Compose מטפלים באופן אוטומטי באירועי הקלט הנדרשים. כדי להטמיע התנהגויות אינטראקציה ספציפיות ברכיבים מותאמים אישית, אפשר להשתמש בממשקי API קיימים של Compose כמו Modifier.draggable או Modifier.scrollable.
במשקפי AI עם תצוגה, קלט של מצביע יכול להשפיע על המיקוד:
- הקשה: אינטראקציה ישירה להפעלת אלמנט. המיקוד עובר לרכיב כשמשתמש מבצע איתו אינטראקציה.
- החלקה: משמשת לניווט ולגלילה. מחוות החלקה שלא מטופלות מתורגמות אוטומטית לתנועות של המיקוד, וכך אפשר לנווט בממשק המשתמש בצורה חלקה בלי קלט ישיר של מצביע.
התנהגות וסדר הניווט
התמקדות בתנועה ובשינוי הסדר בזמן שהמשתמש עובר בין מסכים באפליקציה.
הזזת המיקוד
בקונטיינר שאפשר לגלול בו, המיקוד עובר ברציפות בהחלקה על משטח המגע. ברכיבים נפרדים כמו שורה של לחצנים, כל החלקה מעבירה את המיקוד מרכיב אחד לרכיב הבא.
סדר המיקוד
בדומה ל-Jetpack Compose, Jetpack Compose Glimmer משתמש בחיפוש מיקוד חד-ממדי. מידע נוסף על סדר מעבר המיקוד זמין במאמר שינוי סדר מעבר המיקוד.
כדי לשנות את הפריט שמוגדר כברירת מחדל למיקוד, אפשר להוסיף Modifier.focusGroup() ברמה העליונה ולציין onEnter מותאם אישית: focusProperty
Modifier.focusProperties {
onEnter = {
initialFocus.requestFocus()
cancelFocusChange()
}
}
.focusGroup()
קונטיינרים של גלילה
כדי להבטיח חוויית משתמש אופטימלית, רכיבים עם אפשרות גלילה כמו רשימות צריכים להיות הרכיב העיקרי היחיד במסך. כדי למנוע בלבול בניווט ולקדם תנועה חלקה וצפויה של המיקוד, מומלץ להימנע מהצבת רשימה שאפשר לגלול בה ישירות מעל או מתחת לרכיבים אינטראקטיביים אחרים, כמו כפתורים.
מצבי התמקדות שמוגדרים כברירת מחדל
Jetpack Compose Glimmer מטמיע מצבי מיקוד שמוגדרים כברירת מחדל בכל הרכיבים האינטראקטיביים שלו, כולל משטחים, כרטיסים ופריטים ברשימה, כדי לספק משוב חזותי עקבי וברור במהלך האינטראקציה של המשתמש.
ברירת מחדל: צבע הרקע של הכפתור נגזר מ-
GlimmerTheme.colors.surface, התוכן הראשי שלו מחשב את צבע התוכן של הרקע הזה, והסמלים הםGlimmerTheme.colors.primary.במיקוד: רוחב הגבול גדל כדי להראות שהאלמנט נמצא במיקוד.
התמקדות + לחיצה: הרקע מוגדר ל-
GlimmerTheme.colors.surfaceבאטימות מלאה כדי להעביר את מצב הבחירה.