सूचियों की मदद से उपयोगकर्ता, Wear OS डिवाइसों पर मौजूद विकल्पों में से कोई आइटम चुन सकते हैं.
Wear OS के कई डिवाइसों में गोल स्क्रीन इस्तेमाल होती है. इस वजह से, उन्हें देखना और भी मुश्किल हो जाता है
सूची आइटम जो स्क्रीन के ऊपर और नीचे दिखाई देते हैं. इस वजह से,
Wear OS के लिए लिखने की सुविधा में, इस नाम से LazyColumn
क्लास का एक वर्शन शामिल है
ScalingLazyColumn
, जो स्केलिंग और फ़ेडिंग इफ़ेक्ट के साथ काम करता है. जब आइटम
की ओर बढ़ने पर स्क्रीन के बीच में आ जाते हैं, तो वे बड़े और ज़्यादा अपारदर्शी हो जाते हैं.
नीचे दिया गया ऐनिमेशन दिखाता है कि एलिमेंट का साइज़ और पारदर्शिता, तो वह स्क्रीन पर चलता है:
नीचे दिया गया कोड स्निपेट यह दिखाता है कि हॉरोलॉजिस्ट
ScalingLazyColumn
लेआउट के वर्शन का इस्तेमाल करके ऐसा किया जा सकता है
अलग-अलग Wear OS स्क्रीन साइज़ पर शानदार दिखता है. उदाहरण के लिए,
उदाहरण के तौर पर नीचे दिया गया है, यह पहले और आखिरी एलिमेंट में ज़रूरी पैडिंग (जगह) जोड़ देगा
ScalingLazyColumn
के scrollState
में सेट की गई सूची में मौजूद हैं:
val columnState = rememberResponsiveColumnState( contentPadding = ScalingLazyColumnDefaults.padding( first = ScalingLazyColumnDefaults.ItemType.Text, last = ScalingLazyColumnDefaults.ItemType.SingleButton ) ) ScreenScaffold(scrollState = columnState) { ScalingLazyColumn( columnState = columnState ) { item { ResponsiveListHeader(contentPadding = firstItemPadding()) { Text(text = "Header") } } // ... other items item { Button( imageVector = Icons.Default.Build, contentDescription = "Example Button", onClick = { } ) } } }
स्नैप-ऐंड-फ़्लिंग इफ़ेक्ट जोड़ें
उपयोगकर्ता की उंगली के जेस्चर में, स्नैप-ऐंड-फ़्लिंग की सुविधा जोड़ी जा सकती है.
ScalingLazyColumn
ऑब्जेक्ट में. इस इफ़ेक्ट की मदद से उपयोगकर्ता ज़्यादा सटीक तरीके से नेविगेट कर पाते हैं
आइटम एक सूची में जोड़े जाने के साथ-साथ आइटम को तेज़ी से
लंबी सूची.
इस इफ़ेक्ट को ScalingLazyColumn
के हॉरोलॉजिस्ट के वर्शन में जोड़ने के लिए,
columnState
के rotaryMode
पैरामीटर को इस पर सेट करें
RotaryWithSnap
, जैसा कि इस कोड स्निपेट में दिखाया गया है:
val columnState = rememberResponsiveColumnState( // ... // ... rotaryMode = ScalingLazyColumnState.RotaryMode.Snap ) ScreenScaffold(scrollState = columnState) { ScalingLazyColumn( columnState = columnState ) { // ... // ... } }
आपके लिए सुझाव
- ध्यान दें: JavaScript बंद होने पर लिंक टेक्स्ट दिखता है
- Wear OS कोडलैब के लिए लिखना
- लिस्ट और ग्रिड
- Compose में व्यू का इस्तेमाल करना