Jetpack Compose Glimmer के सभी कॉम्पोनेंट, स्टैंडर्ड इनपुट तरीकों के साथ काम करने के लिए डिज़ाइन किए गए हैं. जैसे, एआई चश्मे के टचपैड पर टैप करना या स्वाइप करना. साथ ही, ये एआई चश्मे के हार्डवेयर के लिए खास तौर पर तैयार की गई, लोअर-लेवल की इनपुट कमांड को भी स्वीकार करते हैं. Jetpack Compose Glimmer कॉम्पोनेंट, ज़रूरी इनपुट इवेंट को अपने-आप हैंडल करते हैं. कस्टम कॉम्पोनेंट के लिए, Compose के मौजूदा एपीआई का इस्तेमाल किया जा सकता है. जैसे, Modifier.draggable या Modifier.scrollable. इससे इंटरैक्शन के खास व्यवहार लागू किए जा सकते हैं.
डिसप्ले वाले एआई चश्मे पर, पॉइंटर इनपुट से फ़ोकस पर असर पड़ सकता है:
- टैप करें: एलिमेंट को चालू करने के लिए सीधे तौर पर इंटरैक्ट करना. जब कोई उपयोगकर्ता किसी एलिमेंट से इंटरैक्ट करता है, तो फ़ोकस उस पर चला जाता है.
- स्वाइप करें: इसका इस्तेमाल नेविगेशन और स्क्रोल करने के लिए किया जाता है. स्वाइप करने के ऐसे जेस्चर जिन्हें हैंडल नहीं किया गया है वे अपने-आप फ़ोकस मूवमेंट में बदल जाते हैं. इससे, सीधे तौर पर पॉइंटर का इस्तेमाल किए बिना यूज़र इंटरफ़ेस (यूआई) पर आसानी से नेविगेट किया जा सकता है.
नेविगेशन का तरीका और क्रम
उपयोगकर्ता के ऐप्लिकेशन पर नेविगेट करने के दौरान, फ़ोकस के मूवमेंट और क्रम में बदलाव पर ध्यान दें.
फ़ोकस को मूव करना
स्क्रोल किए जा सकने वाले कंटेनर पर, टचपैड पर स्वाइप करने से फ़ोकस लगातार बदलता रहता है. बटन की लाइन जैसे अलग-अलग एलिमेंट के लिए, हर स्वाइप से फ़ोकस एक बार में एक एलिमेंट पर जाता है.
फ़ोकस का क्रम
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पर सेट किया जाता है, ताकि यह पता चल सके कि इसे चुना गया है.