Wear पर कंपोज़ करने की सुविधा
| नया अपडेट | स्टेबल रिलीज़ | रिलीज़ कैंडिडेट | बीटा रिलीज़ | ऐल्फ़ा रिलीज़ |
|---|---|---|---|---|
| 19 नवंबर, 2025 | 1.5.5 | - | - | 1.6.0-alpha05 |
डिपेंडेंसी का एलान करना
Wear पर डिपेंडेंसी जोड़ने के लिए, आपको अपने प्रोजेक्ट में Google Maven रिपॉज़िटरी जोड़नी होगी. ज़्यादा जानकारी के लिए, Google की Maven रिपॉज़िटरी पढ़ें.
अपने ऐप्लिकेशन या मॉड्यूल के लिए, build.gradle फ़ाइल में उन आर्टफ़ैक्ट की डिपेंडेंसी जोड़ें जिनकी आपको ज़रूरत है:
ग्रूवी
dependencies { implementation "androidx.wear.compose:compose-foundation:1.5.5" // For Wear Material Design UX guidelines and specifications implementation "androidx.wear.compose:compose-material:1.5.5" // For integration between Wear Compose and Androidx Navigation libraries implementation "androidx.wear.compose:compose-navigation:1.5.5" // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.5.5") // NOTE: DO NOT INCLUDE a dependency on androidx.compose.material:material. // androidx.wear.compose:compose-material is designed as a replacement // not an addition to androidx.compose.material:material. // If there are features from that you feel are missing from // androidx.wear.compose:compose-material please raise a bug to let us know. }
Kotlin
dependencies { implementation("androidx.wear.compose:compose-foundation:1.5.5") // For Wear Material Design UX guidelines and specifications implementation("androidx.wear.compose:compose-material:1.5.5") // For integration between Wear Compose and Androidx Navigation libraries implementation("androidx.wear.compose:compose-navigation:1.5.5") // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.5.5") // NOTE: DO NOT INCLUDE a dependency on androidx.compose.material:material. // androidx.wear.compose:compose-material is designed as a replacement // not an addition to androidx.compose.material:material. // If there are features from that you feel are missing from // androidx.wear.compose:compose-material please raise a bug to let us know. }
डिपेंडेंसी के बारे में ज़्यादा जानने के लिए, बिल्ड डिपेंडेंसी जोड़ना लेख पढ़ें.
सुझाव/राय दें या शिकायत करें
आपके सुझाव, शिकायत या राय से Jetpack को बेहतर बनाने में मदद मिलती है. अगर आपको कोई नई समस्या मिलती है या आपके पास इस लाइब्रेरी को बेहतर बनाने के लिए सुझाव हैं, तो हमें बताएं. कृपया नई समस्या सबमिट करने से पहले, इस लाइब्रेरी में शामिल मौजूदा समस्याओं को देखें. स्टार बटन पर क्लिक करके, किसी मौजूदा समस्या के लिए वोट किया जा सकता है.
ज़्यादा जानकारी के लिए, Issue Tracker का दस्तावेज़ देखें.
Wear Compose का वर्शन 1.6
वर्शन 1.6.0-alpha05
19 नवंबर, 2025
androidx.wear.compose:compose-*:1.6.0-alpha05 रिलीज़ हो गया है. वर्शन 1.6.0-alpha05 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- रोटरी स्नैप बिहेवियर के लिए
RotarySnapSensitivityऔर पेज फ़्लिंग बिहेवियर के लिएPagerSensitivityपेश किया गया है. इससे ऐप्लिकेशन, रोटरी और फ़्लिंग बिहेवियर के सेंसिटिविटी लेवल को अडजस्ट कर सकेंगे. खास तौर पर, पेजर्स के लिए. (Ic3a83, b/449949891) rememberTransformingLazyColumnStateमें किए गए आसान बदलाव. ये बदलाव,TransformingLazyColumnके लिए रिवर्स लेआउट की सुविधा शुरू होने के बाद किए गए थे. इन्हें एक फ़ंक्शन में शामिल किया गया था. साथ ही, डिफ़ॉल्ट ऐंकर इंडेक्स का इस्तेमाल करने के लिए, सेंटिनल वैल्यू का इस्तेमाल किया गया था. (I09302, b/453731755)FailureConfirmationDialogमें इस्तेमाल करने के लिए, नया डिफ़ॉल्टGenericFailureIconजोड़ा गया है. यह सामान्य गड़बड़ी का आइकॉन दिखाता है. मौजूदाFailureIconका नाम बदलकरConnectionFailureIconकर दिया गया है. (I8e965, b/453730430)
गड़बड़ियां ठीक की गईं
- जटिल स्थानीय पैटर्न को पार्स करते समय,
TimePickerको ज़्यादा मज़बूत बनाया गया. (I7b169, b/456538838) verticalArrangementकेArrangement.Centerहोने पर,TransformingLazyColumnके शुरुआती लेआउट को ठीक किया गया. (Id18ef, b/451481233)TransformingLazyColumnStateकंस्ट्रक्टर कोrememberTransformingLazyColumnStateफ़ंक्शन (I36d6a, b/453731755) के साथ अलाइन किया गयाCheckboxButtonके लिए सही का निशान वाला आइकॉन अपडेट किया गया है, ताकि वह गोल दिखे. (Ie645e, b/378645751)SwitchButtonके लिए सही का निशान वाला आइकॉन अपडेट किया गया है, ताकि वह गोल दिखे. (I31fbf, b/378642590)TransformingLazyColumnमेंscrollToItemऑफ़सेट को ठीक किया गया. इससे स्क्रोल करने की दिशा बदल रही थी. (Ib2c93, b/451481233)SwitchButtonऔरSplitSwitchButtonकी परफ़ॉर्मेंस को बेहतर बनाया गया है. (I708de, b/448781327)
वर्शन 1.6.0-alpha04
22 अक्टूबर, 2025
androidx.wear.compose:compose-*:1.6.0-alpha04 रिलीज़ हो गया है. वर्शन 1.6.0-alpha04 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
TransformingLazyColumn(I19f9e, b/352513793) के लिएreverseLayoutलागू करेंFailureConfirmationDialogमें इस्तेमाल करने के लिएConfirmationDialogDefaults.VariantFailureIconजोड़ा गया. कुछ मामलों में, इस नए सामान्य गड़बड़ी वाले आइकॉन कोConfirmationDialogDefaults.FailureIconकी तुलना में ज़्यादा पसंद किया जा सकता है.ConfirmationDialogDefaults.FailureIconमें, फ़ोन से कनेक्शन टूटने की जानकारी दिखती है. (Ifc851, b/443115305)
गड़बड़ियां ठीक की गईं
LaunchedEffectके इस्तेमाल को फिर से व्यवस्थित करके, Picker की परफ़ॉर्मेंस को बेहतर बनाया गया है. (I94519, b/418192973)- API36+ पर
SwipeDismissableNavHostमें मौजूद गड़बड़ी को ठीक किया गया है. इस गड़बड़ी की वजह से, प्रिडिक्टिव बैक ऐनिमेशन के दौरान 'वापस जाएं' बटन दबाने पर, ऐनिमेशन रुक जाता था और फिर से शुरू हो जाता था. अब लागू करने के लिए, Animatable के बजायSeakableTransitionState.animateToका इस्तेमाल किया जाता है. इससे परफ़ॉर्मेंस में थोड़ा सुधार होता है. (I2241f, b/428156670) AlertDialogमें सुलभता से जुड़ी सूचनाओं के क्रम में गड़बड़ी को ठीक किया गया है. इसमें 'पुष्टि करें' बटन को 'बटन' के तौर पर बताया जाता था. 'पुष्टि करें' के बजाय 'पुष्टि करें' पर क्लिक करें. बटन' पर क्लिक करें. (Ic2381, b/429378202)- छोटी स्क्रीन पर
TimePickerकी संख्या को बेहतर तरीके से दिखाया जा सकता है. (I68386, b/447625365) - Wear Compose Foundation से Lazy Layout फ़ोर्क को हटा दिया गया है. इसका मतलब है कि
TransformingLazyColumnअब Compose Foundation Lazy Layout के लागू किए गए तरीके का इस्तेमाल करता है. इसमें प्रीफ़ेचिंग भी शामिल है. साथ ही, ज़्यादातर मामलों में फ़्रेम टाइमिंग की परफ़ॉर्मेंस बेहतर होती है. (Idd743, b/445911630)
वर्शन 1.6.0-alpha03
08 अक्टूबर, 2025
androidx.wear.compose:compose-*:1.6.0-alpha03 रिलीज़ हो गया है. वर्शन 1.6.0-alpha03 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
TimePickerमें पैरामीटर जोड़ा गया है, ताकि शुरुआत में फ़ोकस किए जाने वाले समय के कॉम्पोनेंट के बारे में बताया जा सके. चुने गए कॉम्पोनेंट के लिए, स्थान-भाषा औरTimePickerTypeके आधार पर, डिफ़ॉल्ट रूप से पहला उपलब्ध कॉम्पोनेंट चुना जाता है. (Ie5dfe, b/437015874)CircularProgressIndicatordrawCircularProgressIndicatorतरीके में, इस्तेमाल न किए गएtargetProgressपैरामीटर को हटाया गया. (Ieeb3c, b/430544552)
गड़बड़ियां ठीक की गईं
TransformingLazyColumnverticalAlignmentके लिए, ज़रूरी सहायता को लागू किया गया है. अब यह सुविधा, टॉप, बॉटम या सेंटर पर आधारित स्टैंडर्ड लेआउट के साथ काम करती है. (I2e630, b/444143326)- टेक्स्ट से पहले और बाद में मौजूद स्पेस को ध्यान में रखते हुए, घुमाए गए टेक्स्ट की चौड़ाई का हिसाब लगाने की सुविधा को बेहतर बनाया गया है. इससे घुमाए गए टेक्स्ट वाले स्क्रीनशॉट ठीक से नहीं दिख सकते. ऐसा खास तौर पर तब होता है, जब टेक्स्ट का बैकग्राउंड
TimeTextजैसा हो. (I924a4, b/446601899) - रनटाइम क्लास की गड़बड़ी को ठीक करने के लिए, Compose Foundation के
WarpedCurvedTextRendererको अपडेट किया गया है, ताकिandroidx.emoji2सेEmojiCompatInitializerको चुना जा सके. (I589b4, b/444422736) ScalingLazyColumnको अपडेट किया गया है, ताकिCollectionInfoवाले स्क्रोल किए जा सकने वाले नोड पर फ़ोकस किया जा सके. इससे यह ज़्यादा संदर्भों में रोटरी के साथ काम कर पाएगा. जैसे,Material3AlertDialogपर. (I6be3c, b/445332360)
वर्शन 1.6.0-alpha02
24 सितंबर, 2025
androidx.wear.compose:compose-*:1.6.0-alpha02 रिलीज़ हो गया है. वर्शन 1.6.0-alpha02 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- नए
CurvedTextStyleपैरामीटरwarpOffsetका इस्तेमाल करके, टेक्स्ट को घुमाने की सुविधा जोड़ी गई है. इससे, घुमावदार टेक्स्ट को बेहतर तरीके से रेंडर किया जा सकेगा. खास तौर पर, कर्सिव फ़ॉन्ट के लिए. (If5dcb)
गड़बड़ियां ठीक की गईं
TransformingLazyColumnमें स्क्रोल करते समय, आइटम के ऐनिमेशन की कैश मेमोरी को ऑप्टिमाइज़ किया गया. (I62ae8)OpenOnPhoneDialogऔरConfirmationDialogवर्शन कोFLAG_KEEP_SCREEN_ONसेट करने के लिए अपडेट किया गया है, ताकि ऐनिमेशन पूरी तरह से चलें और डायलॉग बॉक्स अपने-आप बंद हो जाएं. (Iad7d4)- एपीआई 36 और इसके बाद के वर्शन पर,
SwipeDismissableNavHostके साथModifier.edgeSwipeToDismissका इस्तेमाल करने पर, उसके क्रैश होने की गड़बड़ी को ठीक किया गया है. (Ifc13d) - अनस्पेसिफ़ाइड केस को सही तरीके से रेफ़र करने के लिए, अपडेट किया गया दस्तावेज़ और नए
CurvedTextStyle warpOffsetपैरामीटर से जुड़ी टिप्पणियां. (I41aa5)
वर्शन 1.6.0-alpha01
10 सितंबर, 2025
androidx.wear.compose:compose-*:1.6.0-alpha01 रिलीज़ हो गया है. वर्शन 1.6.0-alpha01 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
Card,TitleCard,OutlinedCard, औरAppCardके लिए, क्लिक न किए जा सकने वाले वैरिएंट जोड़े गए (I509bb, b/406690146)- नए नॉन-क्लिकेबल कार्ड एपीआई से
interactionSourceपैरामीटर हटा दिया गया है. (If0c7a, b/440323280) TimePickerकॉम्पोनेंट में नयाMinutesSecondsटाइप जोड़ा गया है. यह सिर्फ़ मिनट और सेकंड कॉलम दिखाता है. इसमें घंटे वाला कॉलम नहीं दिखता (Ia9e94, b/438004664)
गड़बड़ियां ठीक की गईं
- मॉडिफ़ायर पैरामीटर के
HorizontalPagerScaffoldइस्तेमाल से जुड़ी समस्या को ठीक किया गया है, ताकिModifier.fillMaxSize()(I07ae1, b/441682601) जोड़ने पर,HorizontalPagerपेज इंडिकेटर की जानकारी न मिटे - डिफ़ॉल्ट रूप से,
ScrollIndicatorकी दिशा को कॉन्टेंट लेआउट की दिशा के साथ अलाइन करें. (I0da0f, b/441489028) TransformingLazyColumnके साथScrollAwayका इस्तेमाल करने पर आने वाली समस्या को ठीक किया गया.TimeTextकिसी दूसरी स्क्रीन पर जाने और वापस आने के बाद, सही तरीके से स्क्रोल नहीं हो रहा था. (Ic0ef1, b/433549148)- स्क्रीन के सबसे ऊपर/नीचे मौजूद खास मामलों के लिए,
SCROLL_BACKWARDSऔरSCROLL_FORWARDSसिमैंटिक कीTransformingLazyColumnरिपोर्टिंग को ठीक किया गया है. (I5c28d, b/405205994) SwipeDismissableNavHostमें मौजूद उस बग को ठीक किया गया है जिसकी वजह से, एपीआई 36 पर वापस स्वाइप करने के बाद, ट्रांज़िशन को 'पूरा हुआ' के तौर पर मार्क नहीं किया गया था. (Ife72e, b/441089689)- ‘फ़ोन देखें’ के कुछ अनुवादों को छोटा होने से रोकने के लिए, डिफ़ॉल्ट
OpenOnPhoneMaxSweepAngleको 200 डिग्री पर अपडेट करें. (Ib2e4c, b/428243902)
Wear Compose का वर्शन 1.5
वर्शन 1.5.5
05 नवंबर, 2025
androidx.wear.compose:compose-*:1.5.5 रिलीज़ हो गया है. वर्शन 1.5.5 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- छोटी स्क्रीन पर
TimePickerनंबर को बेहतर तरीके से दिखाना (I70fbe)
वर्शन 1.5.4
22 अक्टूबर, 2025
androidx.wear.compose:compose-*:1.5.4 रिलीज़ हो गया है. वर्शन 1.5.4 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
LaunchedEffectके इस्तेमाल को फिर से व्यवस्थित करके, Picker की परफ़ॉर्मेंस को बेहतर बनाया गया है. (I94519, b/418192973)- API36+ पर
SwipeDismissableNavHostमें मौजूद गड़बड़ी को ठीक किया गया है. इस गड़बड़ी की वजह से, प्रिडिक्टिव बैक ऐनिमेशन के दौरान 'वापस जाएं' बटन दबाने पर, ऐनिमेशन रुक जाता था और फिर से शुरू हो जाता था. अब लागू करने के लिए, Animatable के बजायSeakableTransitionState.animateToका इस्तेमाल किया जाता है. इससे परफ़ॉर्मेंस में थोड़ा सुधार होता है. (I2241f, b/428156670) AlertDialogमें सुलभता से जुड़ी सूचनाओं के क्रम में गड़बड़ी को ठीक किया गया है. इसमें 'पुष्टि करें' बटन को 'बटन' के तौर पर बताया जाता था. 'पुष्टि करें' के बजाय 'पुष्टि करें' पर क्लिक करें. बटन' पर क्लिक करें. (Ic2381, b/429378202)
वर्शन 1.5.3
08 अक्टूबर, 2025
androidx.wear.compose:compose-*:1.5.3 रिलीज़ हो गया है. वर्शन 1.5.3 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
TransformingLazyColumnverticalAlignmentके लिए, ज़रूरी सहायता को लागू किया गया है. अब यह सुविधा, टॉप, बॉटम या सेंटर पर आधारित स्टैंडर्ड लेआउट के साथ काम करती है. (I2e630, b/444143326)
संस्करण 1.5.2
24 सितंबर, 2025
androidx.wear.compose:compose-*:1.5.2 रिलीज़ हो गया है. वर्शन 1.5.2 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
TransformingLazyColumnमें स्क्रोल करते समय, आइटम के ऐनिमेशन की कैश मेमोरी को ऑप्टिमाइज़ किया गया. (I62ae8)OpenOnPhoneDialogऔरConfirmationDialogवर्शन को FLAG_KEEP_SCREEN_ON सेट करने के लिए अपडेट किया गया है, ताकि ऐनिमेशन पूरी तरह से चलें और डायलॉग बॉक्स अपने-आप बंद हो जाएं. (Iad7d4)- एपीआई 36 और इसके बाद के वर्शन पर,
SwipeDismissableNavHostके साथModifier.edgeSwipeToDismissका इस्तेमाल करने पर, उसके क्रैश होने की गड़बड़ी को ठीक किया गया है. (Ifc13d) - अनस्पेसिफ़ाइड केस को सही तरीके से रेफ़र करने के लिए, अपडेट किया गया दस्तावेज़ और नए
CurvedTextStyle warpOffsetपैरामीटर से जुड़ी टिप्पणियां. (I41aa5)
संस्करण 1.5.1
10 सितंबर, 2025
androidx.wear.compose:compose-*:1.5.1 रिलीज़ हो गया है. वर्शन 1.5.1 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- मॉडिफ़ायर पैरामीटर के
HorizontalPagerScaffoldइस्तेमाल से जुड़ी समस्या ठीक करें, ताकिModifier.fillMaxSize()जोड़ने पर HorizontalPager, पेज इंडिकेटर को न खोए (I07ae1, b/441682601) - डिफ़ॉल्ट रूप से,
ScrollIndicatorकी दिशा को कॉन्टेंट लेआउट की दिशा के साथ अलाइन करें. (I0da0f, b/441489028) TransformingLazyColumnके साथScrollAwayका इस्तेमाल करने पर आने वाली समस्या को ठीक किया गया.TimeTextकिसी दूसरी स्क्रीन पर जाने और वापस आने के बाद, सही तरीके से स्क्रोल नहीं हो रहा था. (Ic0ef1, b/433549148)- स्क्रीन के सबसे ऊपर/नीचे मौजूद खास मामलों के लिए,
SCROLL_BACKWARDSऔरSCROLL_FORWARDSसिमैंटिक कीTransformingLazyColumnरिपोर्टिंग को ठीक किया गया है. (I5c28d, b/405205994) SwipeDismissableNavHostमें मौजूद उस बग को ठीक किया गया है जिसकी वजह से, एपीआई 36 पर वापस स्वाइप करने के बाद, ट्रांज़िशन को 'पूरा हुआ' के तौर पर मार्क नहीं किया गया था. (Ife72e, b/441089689)- ‘फ़ोन देखें’ के कुछ अनुवादों को छोटा होने से रोकने के लिए, डिफ़ॉल्ट
OpenOnPhoneMaxSweepAngleको 200 डिग्री पर अपडेट करें. (Ib2e4c, b/428243902)
वर्शन 1.5.0
27 अगस्त, 2025
androidx.wear.compose:compose-*:1.5.0 रिलीज़ हो गया है. वर्शन 1.5.0 में ये बदलाव शामिल हैं.
1.4.0 के बाद हुए ज़रूरी बदलाव
Wear Compose Material 3 लाइब्रेरी की पहली रिलीज़. यह नई Material 3 Expressive डिज़ाइन सिस्टम के साथ काम करती है. इस रिलीज़ में ये शामिल हैं:
MaterialThemeऔर डाइनैमिक कलर थीमिंग को अपडेट किया गया.- स्क्रीन के स्ट्रक्चर को लेआउट करने के लिए नए
AppScaffold, ScreenScaffold,HorizontalPagerScaffold, औरVerticalPagerScaffoldकॉम्पोनेंट. साथ ही,ScrollIndicator,TimeText,HorizontalPageIndicator, औरVerticalPageIndicatorऐनिमेशन को कोऑर्डिनेट करने के लिए नए कॉम्पोनेंट. - शेप मॉर्फ़िंग
IconButton,TextButton,IconToggleButton, औरTextToggleButton. इनमें ऐसे बदलाव किए गए हैं जो दबाने या चुनने पर ऐनिमेट होते हैं. EdgeButton, जिसका खास आकार स्क्रीन के निचले हिस्से के लिए डिज़ाइन किया गया है.ButtonGroupएक लाइन में कई बटन दिखाता है. इन बटन को छूने पर, इनका आकार बदल जाता है.AlertDialogऔरConfirmationDialog, डायलॉग के अतिरिक्त कॉन्टेंट के लिए अलग-अलग वर्शन के साथ.TimePickerऔरDatePickerकॉम्पोनेंट.- प्रोग्रेस इंडिकेटर में
CircularProgressIndicator(सेगमेंट किए गए वैरिएशन के साथ),ArcProgressIndicator, औरLinearProgressIndicatorशामिल हैं.
इसके अलावा, Wear Compose Foundation 1.5.0 में ये शामिल हैं:
TransformingLazyColumn, यह ऊपर से नीचे की ओर स्क्रोल करने वाली एक सूची है. इसमें स्केलिंग और मॉर्फ़िंग ऐनिमेशन काम करते हैं.- Wear Compose Foundation में,
HorizontalPagerऔरVerticalPagerकी मदद से पेजिंग की सुविधा उपलब्ध है. - हायरार्किकल फ़ोकस ग्रुप - इनका इस्तेमाल किसी ऐप्लिकेशन में कंपोज़ेबल को एनोटेट करने के लिए किया जाता है. इससे कंपोज़िशन के चालू हिस्से को ट्रैक किया जा सकता है और फ़ोकस को मैनेज किया जा सकता है.
(Wear OS के लिए Material 3 Expressive) के बारे में ज़्यादा पढ़ें
अन्य बदलाव
- वर्शन 1.5.0 में जोड़ी गई सुविधाओं की पूरी सूची देखने के लिए, (beta01 के रिलीज़ नोट) देखें.
वर्शन 1.5.0-rc02
13 अगस्त, 2025
androidx.wear.compose:compose-*:1.5.0-rc02 रिलीज़ हो गया है. वर्शन 1.5.0-rc02 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
TimePickerमें एक गड़बड़ी को ठीक किया गया है. इसमें, अवधि (सुबह/शाम) के लिए लंबी, अंतरराष्ट्रीय स्तर पर इस्तेमाल की जाने वाली स्ट्रिंग से लेआउट खराब हो सकता था. (I0fa81)
वर्शन 1.5.0-rc01
30 जुलाई, 2025
androidx.wear.compose:compose-*:1.5.0-rc01 रिलीज़ हो गया है. वर्शन 1.5.0-rc01 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
TimePickerअब पूरी तरह से उपयोगकर्ता की स्थान-भाषा पर आधारित है. यहDateFormat.getBestDateTimePatternका इस्तेमाल करके, पिकर और सेपरेटर के क्रम और कॉन्टेंट का पता लगाता है. इससे, CJK भाषाओं के लिए कॉलम के क्रम को ठीक किया जाता है. साथ ही, अरेबिक जैसी भाषाओं में RTL लेआउट से जुड़ी समस्याओं को हल किया जाता है. इसमें स्थानीय जगह के हिसाब से सेपरेटर का इस्तेमाल किया जाता है. साथ ही, यह स्थानीय जगह के हिसाब से 0 से 11 और 1 से 12 घंटे के फ़ॉर्मैट, दोनों के साथ काम करता है (I5d543)DatePickerअब कुछ भाषाओं में महीने को संख्या के तौर पर दिखाता है. जैसे, CJK. ऐसा इसलिए किया जाता है, ताकि संख्या और भाषा वाले फ़ॉर्मैट को एक साथ इस्तेमाल न किया जा सके. उदाहरण के लिए, 2025 | 07 | 02 के बजाय 2025 | 7月 | 02). इस बदलाव में, एक ह्यूरिस्टिक लागू किया गया है. यह देखता है कि क्या स्थान-भाषा में साल के लिए भाषाई प्रत्यय का इस्तेमाल किया जाता है. अगर ऐसा होता है, तो यह महीने के फ़ॉर्मैट को टेक्स्ट (MMM) से संख्या (MM) में बदल देता है, ताकि एक जैसा फ़ॉर्मैट बना रहे. (Ia93fe)- अब Picker कॉम्पोनेंट में हेडिंग के लिए वर्टिकल स्पेस तय कर दिया गया है. इससे Picker कॉलम चुनने पर, खास तौर पर
Talkbackमोड में दिखने वाले बदलाव को रोका जा सकेगा. (I7f8b7) - सुलभता से जुड़ी एक गड़बड़ी को ठीक किया गया है. यह गड़बड़ी,
HorizontalPageIndicatorऔरVerticalPageIndicatorको फ़ुल स्क्रीन पर दिखाने की वजह से हुई थी. पेज इंडिकेटर अब फ़ुल-स्क्रीन पर नहीं दिखेंगे. साथ ही,HorizontalPagerScaffoldयाVerticalPagerScaffoldके साथ इस्तेमाल करने पर, ये अपने-आप सेट हो जाएंगे. पेजर स्कैफ़ोल्ड का इस्तेमाल न करने पर,modifier = Modifier.align(Alignment.BottomCenter)का इस्तेमाल करके अलाइनमेंट को साफ़ तौर पर सेट करें. साथ ही,HorizontalPageIndicatorऔरmodifier =Modifier.align(Alignment.CenterEnd)के साथVerticalPageIndicatorका इस्तेमाल करें. (I3a0ad) SwipeToRevealमें स्वाइप करने की दिशा, अब एलटीआर और आरटीएल, दोनोंLayoutDirectionsके लिए एक जैसी है. (I6d427)- कार्रवाइयों के लिए,
SwipeToRevealवर्टिकल सेंटरिंग की सुविधा फिर से चालू की गई. अगरhasPartiallyRevealedState = true, तो स्क्रोल करने पर कॉलर कोRevealStateकोRevealValue.Coveredपर रीसेट करना चाहिए. (I6473d) SwipeDismissableNavHostअब API 36 और इसके बाद के वर्शन के लिए, कॉन्टेंट को सही तरीके से क्लिप करता है. (Ib9a44)
वर्शन 1.5.0-beta06
16 जुलाई, 2025
androidx.wear.compose:compose-*:1.5.0-beta06 रिलीज़ हो गया है. वर्शन 1.5.0-beta06 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
LazyColumnयाScalingLazyColumnमेंreverseLayout = trueहोने पर,EdgeButtonऐनिमेशन से जुड़ी समस्या ठीक की गई. (I46a1a)ScreenScaffoldमें मौजूद उस गड़बड़ी को ठीक किया गया है जिसमेंScrollIndicator/PageIndicatorदिए जाने पर, TalkBack में छूकर जानकारी सुनने की सुविधा काम नहीं कर रही थी. (I6dcee)TransformingLazyColumnअबTransformationSpecसे कस्टम मॉर्फ़िंग की अनुमति देता है. इसके लिए, बैकग्राउंड पेंटर मेंTransformationSpecकी ओर से दी गईitemHeightवैल्यू को पढ़ा जाता है. (I6a599)IconButtonके लिए, ऐनिमेशन चालू/बंद करने पर रंगों के ट्रांज़िशन की सुविधा चालू/बंद की गई है, ताकि यहIconToggleButtonके साथ काम कर सके. (Ife10a)CircularProgressIndicatorमें सेक्शन क्लैंपिंग की सुविधा हटा दी गई है, ताकि ऐनिमेशन के दौरान डॉट के साइज़ में अचानक बदलाव न हो. इस बदलाव के तहत,drawCircularProgressIndicatorमें मौजूदtargetProgressपैरामीटर का इस्तेमाल अब नहीं किया जाता. (I33309)- अब पिकर में सिमैंटिक रोल
ValuePickerहै. इसका इस्तेमाल स्क्रीन रीडर, पिकर को ज़्यादा ऐक्सेसिबल बनाने के लिए कर सकते हैं. पिकर में, सुलभता से क्लिक करने वाले लेबल को भी अपडेट किया गया है. इससे, सिर्फ़ पढ़ने के मोड में वैल्यू को अडजस्ट करने और मौजूदा वैल्यू को चुनने के बीच अंतर किया जा सकता है. (I33309)
वर्शन 1.5.0-beta05
2 जुलाई, 2025
androidx.wear.compose:compose-*:1.5.0-beta05 रिलीज़ हो गया है. वर्शन 1.5.0-beta05 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- दस्तावेज़ को अपडेट किया गया, ताकि
Modifier.edgeSwipeToDismissके इस्तेमाल के बारे में साफ़ तौर पर बताया जा सके (I78cb5) - उस गड़बड़ी को ठीक किया गया है जिसमें लेज़ी लिस्ट (I1d4f6) में,
SwipeToRevealके साथ कई आइटम दिखाए जा सकते थे TransformingLazyColumnमें कंटेनर शेप को अब स्केल किया जाता है, ताकि कॉन्टेंट को काटा न जाए. (I9221a)- घंटे/मिनट/सेकंड या साल/महीने/दिन के लिए
TimePickerऔरDatePickerलेबल में अब स्क्रीन रीडर के लिए हेडिंग सिमैंटिक्स (I77d8b) मौजूद हैं - अनिश्चित
CircularProgressIndicator(Iaf0bb) में लूप के बीच के पॉज़ को हटाया गया - आइटम हटाए जाने पर,
TransformingLazyColumnमें ऐनिमेशन से जुड़ी गड़बड़ी को ठीक किया गया है. (I73034) - जब आइटम हटाए जाते हैं, तब
TransformingLazyColumnमें ऐंकर आइटम को सही तरीके से हैंडल किया जाता है. (I841a8) PickerGroupमें, ऑटो सेंटरिंग की सुविधा चालू होने पर, चुने गए (सेंटर में मौजूद) पिकर को बदलने पर, पिकर अब हॉरिज़ॉन्टल तौर पर ऐनिमेट होते हैं. (Ic82c4)
वर्शन 1.5.0-beta04
18 जून, 2025
androidx.wear.compose:compose-*:1.5.0-beta04 रिलीज़ हो गया है. वर्शन 1.5.0-beta04 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
TransformingLazyColumnमें लेआउट से जुड़ी गड़बड़ी को ठीक किया गया है. अब स्क्रीन पर दिखने वाला कॉन्टेंट, स्क्रीन के सबसे ऊपर से सही तरीके से अलाइन किया गया है (I80115)TransformingLazyColumnसे जुड़ी उस समस्या को ठीक किया गया है जिसमेंEdgeButtonवाली सूची के सबसे नीचे स्क्रोल करने पर, सबसे नीचे मौजूद आइटम का साइज़ गलत तरीके से बदल जाता था. लेआउट को वापस लाने पर, स्क्रोल करने की प्रोग्रेस अब ग्रेडिएंट डिसेंट को फ़ॉलो करती है. (Iea375)TransformingLazyColumnअब बैकग्राउंड पेंटर में मौजूद आइटम की ऊंचाई को पढ़ता है. इससे कस्टमTransformationSpecsको मॉर्फ़िंग लागू करने की अनुमति मिलती है. (I022f0)SwipeToRevealअब दिखाई गई कार्रवाइयों को वर्टिकल तौर पर सही तरीके से सेंटर में रखता है. (I4419b)- हमने
SwipeToRevealमें मौजूद एक गड़बड़ी को ठीक किया है. इस गड़बड़ी की वजह से, अगर स्क्रीन पर व्यू और कंपोज़, दोनों का इस्तेमाल किया जा रहा था, तो स्वाइप करके खारिज करने की सुविधा ठीक से काम नहीं कर रही थी. (I5dc0e) - स्क्रोल करते समय,
SwipeToRevealकार्रवाइयों को वर्टिकल ऑफ़सेट के साथ दिखाने वाली गड़बड़ी को ठीक किया गया है. (I29444) AlertDialog,ConfirmationDialog,OpenOnPhoneDialog, औरSwipeToRevealअब स्क्रीन के साइज़ के प्रतिशत के तौर पर कैलकुलेट किए गए पैडिंग और साइज़ को राउंड अप करते हैं. (I76367)ButtonDefaults.outlinedButtonBorderअब चालू/बंद किए गए इन बदलावों के बाद, size(If2ddd) को अपडेट करता है- Pager और
ScreenScaffoldके साथ जटिल स्क्रीन पर होने वालीEdgeButtonकी ऊंचाई से जुड़ी गड़बड़ी को ठीक किया गया. (I946e3) - रेस कंडिशन की समस्या को ठीक किया गया है. इसकी वजह से, प्लेसहोल्डर ऐनिमेशन रुक जाते थे. (I53530)
- कैनवस पर ड्रॉ करके,
HorizontalPageIndicatorऔरVerticalPageIndicatorकी परफ़ॉर्मेंस को बेहतर बनाया गया है. (Ifae1e) - EdgeButton के आकार को बेहतर बनाया गया है, ताकि आउटलाइन बनाने वाले एलिप्सिस और सर्कल के बीच ट्रांज़िशन को आसान बनाया जा सके. (I7721e)
LevelIndicatorमें मौजूद उस गड़बड़ी को ठीक किया गया है जिसकी वजह से, गैर-ज़रूरी रीकंपोज़िशन की वजह से ऐनिमेशन रुक जाते थे. (I45d08)
वर्शन 1.5.0-beta03
4 जून, 2025
androidx.wear.compose:compose-*:1.5.0-beta03 रिलीज़ हो गया है. वर्शन 1.5.0-beta03 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
OpenOnPhoneDialogअब TalkBack में सिर्फ़ मैसेज के टेक्स्ट के बारे में बताता है. साथ ही, आइकॉन के बारे में नहीं बताता.OpenOnPhoneDialogDefaultsको अपडेट कर दिया गया है, ताकिicon()सेiconContentDescriptionऔरcontentDescriptionपैरामीटर को हटाया जा सके. इसके अलावा,ConfirmationDialogDefaultsमें अबSuccessIconऔरFailureIconकंपोज़ेबल पर मॉडिफ़ायर पैरामीटर हैं. (Id2ae2)
गड़बड़ियां ठीक की गईं
- हमने
SurfaceTransformationपैरामीटर के इफ़ेक्ट को लागू करने का क्रम बदल दिया है. पहले, Wear Material3 कॉम्पोनेंट पर ट्रांसफ़ॉर्मेशन इस तरह लागू किए जाते थे: बैकग्राउंड पेंटर, कंटेनर ट्रांसफ़ॉर्मेशन, कॉन्टेंट ट्रांसफ़ॉर्मेशन. अब, पहले दो को उलट दिया गया है. साथ ही, हम उनके बीच में पास किए गए किसी भी मॉडिफ़ायर को लागू करते हैं. इसलिए, यह कंटेनर ट्रांसफ़ॉर्मेशन से प्रभावित होता है. इससे उन मामलों को ठीक किया जाता है जिनमें ट्रांसफ़ॉर्मेशन पैरामीटर का इस्तेमाल करके, टीएलसी में मौजूद एलिमेंट के साथ प्लेसहोल्डर शिमर इफ़ेक्ट का इस्तेमाल किया जाता है. (I786cf) RevealState.Saverको इसलिए जोड़ा गया था, ताकि गतिविधि या प्रोसेस को फिर से बनाने पर,SwipeToRevealकी स्थिति को वापस लाया जा सके.rememberRevealStateफ़ंक्शन अब डिफ़ॉल्ट रूप से इस सेवर का इस्तेमाल करता है. (Ie0ecb)SwipeToRevealप्राइमरी और सेकंडरी ऐक्शन बटन को डिफ़ॉल्ट रूप सेButtonDefault.Heightपर सेट किया जाना चाहिए. (इस बग को ठीक कर दिया गया है. इसमें लंबे बटनों के लिए, ये बटन ज़्यादा से ज़्यादा ऊंचाई तक भर जाते थे). (Ibfba1)- दाईं ओर स्वाइप करने का जेस्चर करने पर, इंटरैक्ट किए गए आखिरी कॉम्पोनेंट को रीसेट करने के लिए,
SwipeToRevealको बदल दिया गया है. (Ia8450) SwipeToRevealकोRevealingस्थिति में बदल दिया गया था, जब स्वाइप की आखिरी पोज़िशन, दिखाने और दिखाए गए ऐंकर के बीच में थी और दिखाने वाले ऐंकर के ज़्यादा करीब थी. (If4458)- अब
ButtonGroupका कॉन्टेंट, आरटीएल लेआउट में सही तरीके से उलटा हो गया है (Ib378d) AnimatedTextअब RTL टेक्स्ट डायरेक्शन के साथ काम करता है (I4533c)TransformingLazyColumnअब सबसे नीचे मौजूद आइटम (Idacab) को हटाने पर, आइटम का साइज़ सही तरीके से बदलता हैTransformingLazyColumnअब सिर्फ़ एक मेज़रिंग पास बनाता है. इससे फ़्रेम के समय को कम करके परफ़ॉर्मेंस को बेहतर बनाया जाता है. (I501a1)
वर्शन 1.5.0-beta02
20 मई, 2025
androidx.wear.compose:compose-*:1.5.0-beta02 रिलीज़ हो गया है. वर्शन 1.5.0-beta02 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- फ़ाउंडेशन, मटीरियल, और मटीरियल3 लाइब्रेरी के लिए अपडेट की गई बेसलाइन प्रोफ़ाइलें. (I53f06)
TransformingLazyColumnमें मौजूद एक गड़बड़ी को ठीक किया गया है. इस गड़बड़ी की वजह से, सबसे नीचे मौजूद आइटम को हटाने पर आइटम का साइज़ बदल जाता था. (Idacab)TransformingLazyColumnसे जुड़ी गड़बड़ी को ठीक किया गया है. इस गड़बड़ी की वजह से, सूची सबसे ऊपर या सबसे नीचे रुक जाती थी. (I49d00)OpenOnPhoneDialogमें TalkBack को आइकॉन के कॉन्टेंट के ब्यौरे के बजाय, घुमावदार टेक्स्ट के बारे में बताना चाहिए. (I4efe8)SwipeToRevealमें मौजूद उस गड़बड़ी को ठीक किया गया है जिसकी वजह से,hasPartiallyRevealedStateको गलत पर सेट करने पर,RevealState.currentValueमें गलत ऐंकर रिपोर्ट किया जाता था. (I9c7cf)SwipeToRevealमें मौजूद 'बदलाव वापस लाएं' बटन अब डिफ़ॉल्ट रूप सेButtonDefaults.Heightपर सेट हैं. (I1f6c8)BasicSwipeToDismissBoxपरफ़ॉर्मेंस को बेहतर बनाया गया है. इसके लिए, स्क्रिम बनाने के लिए Canvas का इस्तेमाल नहीं किया गया है. (I68f2c)- स्लाइडर में सुलभता से जुड़ी एक गड़बड़ी को ठीक किया गया है. इसमें अपडेट के बाद, सुनाई गई प्रतिशत वैल्यू, वैल्यू से मेल नहीं खाती थी (I91146)
placeholderShimmerलागू करने से जुड़ी गड़बड़ी को ठीक किया गया. (Iee39bTransformingLazyColumnकी परफ़ॉर्मेंस को बेहतर बनाया गया है. इसके लिए,ScrollProgressकी कैलकुलेशन को 30% तक ऑप्टिमाइज़ किया गया है. (I4c4cb)
वर्शन 1.5.0-beta01
7 मई, 2025
androidx.wear.compose:compose-*:1.5.0-beta01 रिलीज़ हो गया है. वर्शन 1.5.0-beta01 में ये बदलाव शामिल हैं.
Compose for Wear OS के 1.5.0-beta01 वर्शन से पता चलता है कि लाइब्रेरी का यह वर्शन पूरी तरह से काम करता है. साथ ही, एपीआई लॉक है. हालांकि, जहां एक्सपेरिमेंट के तौर पर मार्क किया गया है वहां एपीआई लॉक नहीं है.
Wear Compose 1.5.0-beta01 में Wear Compose Material3 लाइब्रेरी शामिल है. यह Material 3 Expressive नाम के नए यूज़र इंटरफ़ेस (यूआई) डिज़ाइन सिस्टम के साथ काम करती है. हमारा सुझाव है कि आप Material से Material3 पर अपग्रेड करें, ताकि ऐप्लिकेशन में नए विज़ुअल डिज़ाइन का इस्तेमाल किया जा सके. साथ ही, नए कॉम्पोनेंट का फ़ायदा पाया जा सके. जैसे:
MaterialThemeमें अपडेट की गई और बेहतर कलर स्कीम, टाइपोग्राफ़ी, और शेप का इस्तेमाल करके, अपने डिज़ाइन को ज़्यादा आकर्षक और अलग बनाएं.- डाइनैमिक कलर थीमिंग की सुविधा, जो आपकी स्मार्टवॉच की होम स्क्रीन के रंगों से मेल खाने वाली कलर स्कीम को आपके ऐप्लिकेशन के लिए अपने-आप जनरेट करती है.
- नए कॉम्पोनेंट, डिफ़ॉल्ट रूप से बड़ी स्क्रीन के साइज़ के हिसाब से अपने-आप अडजस्ट हो जाते हैं
- शेप मॉर्फ़िंग - गोल बटन वाले कॉम्पोनेंट, जैसे कि
IconButton,TextButton,IconToggleButton, औरTextToggleButtonमें ऐसे बदलाव किए जा सकते हैं जो दबाए जाने या चुने जाने पर ऐनिमेट होते हैं. EdgeButton- यह स्क्रीन के किनारे पर मौजूद एक नया बटन है. इसे खास तौर पर स्क्रीन के सबसे नीचे के लिए डिज़ाइन किया गया है.- स्केफ़ोल्ड - स्क्रीन का स्ट्रक्चर बनाने के लिए,
AppScaffoldऔरScreenScaffoldको पेश किया गया है. साथ ही,ScrollIndicatorऔरTimeTextऐनिमेशन को कोऑर्डिनेट किया गया है. - बटन - इसमें स्टेडियम के आकार वाले कई बटन इस्तेमाल किए जा सकते हैं. साथ ही, इसमें सिंगल-स्लॉट कंटेनर और आइकॉन और लेबल वाले बटन के लिए मल्टी-स्लॉट वेरिएशन का इस्तेमाल किया जा सकता है. टॉगल बटन की ज़रूरत होने पर,
CheckboxButtonऔरSwitchButtonउपलब्ध कराए जाते हैं. वहीं,RadioButtonउपलब्ध सिलेक्शन बटन है. टॉगल और सिलेक्शन बटन के ‘स्प्लिट’ वेरिएशन भी उपलब्ध कराए जाते हैं. ButtonGroup- यह एक लाइन में बटनों का एक ऐसा ग्रुप लागू करता है जिसे छूने पर, उनकी शेप बदल जाती है.AlertDialogवैरिएशन में, ठीक है/रद्द करें बटन याEdgeButtonका इस्तेमाल किया जा सकता है.ConfirmationDialogका इस्तेमाल, टाइमआउट के साथ मैसेज दिखाने के लिए किया जा सकता है. यह सुविधा, लिंक हो जाने, लिंक न हो पाने, और फ़ोन पर खुलने वाले अलग-अलग वर्शन के लिए खास ऐनिमेशन के साथ काम करती है.- पिकर -
TimePickerऔरDatePickerके साथ-साथ, पिकर औरPickerGroupकॉम्पोनेंट भी काम करते हैं. इनकी मदद से, पिकर स्क्रीन बनाई जा सकती हैं. ProgressIndicators- इसमें सर्कुलर और लीनियर प्रोग्रेस इंडिकेटर इस्तेमाल किए जा सकते हैं.CircularProgressIndicatorमें सेगमेंट किए गए और अनिश्चितता वाले वैरिएशन होते हैं.- कार्ड - कई तरह के कार्ड उपलब्ध हैं. इनमें
TitleCardभी शामिल है. यह टाइटल, समय, सबटाइटल या कॉन्टेंट स्लॉट वाले कार्ड के लिए खास लेआउट उपलब्ध कराता है.TitleCardको इमेज बैकग्राउंड भी दिया जा सकता है, ताकि कार्ड में मौजूद जानकारी के मतलब को और बेहतर तरीके से समझाया जा सके. - पेजर -
HorizontalPagerScaffold,VerticalPagerScaffold, औरAnimatedPageकॉम्पोनेंट,HorizontalPageIndicatorऔरVerticalPagerIndicatorऐनिमेशन को साथ में चलाते हैं.HorizontalPagerऔरVerticalPagerको Wear Compose Foundation लाइब्रेरी में रिलीज़ किया गया है. - प्लेसहोल्डर - यह कॉम्पोनेंट के ऊपर एक स्केलेटन शेप बनाता है. ऐसा तब होता है, जब कोई अस्थायी कॉन्टेंट उपलब्ध नहीं होता.
- स्लाइडर और स्टेपर - स्लाइडर और स्टेपर, दोनों की मदद से उपयोगकर्ता वैल्यू की किसी रेंज में से कोई वैल्यू चुन सकते हैं. स्लाइडर ज़्यादा कॉम्पैक्ट होते हैं और उन्हें सेगमेंट में बांटा जा सकता है. वहीं, स्टेपर एक फ़ुल स्क्रीन कॉम्पोनेंट होता है, जिसे आम तौर पर
StepperLevelIndicatorके साथ जोड़ा जाता है. SwipeToReveal- इसका इस्तेमाल, कंपोज़ेबल में अतिरिक्त कार्रवाइयां जोड़ने के लिए किया जाता है. ऐसा तब किया जाता है, जब उसे दाईं से बाईं ओर स्वाइप किया जाता है.
इसके अलावा, Wear Compose Foundation 1.5.0-beta01 में ये नए कॉम्पोनेंट शामिल हैं:
TransformingLazyColumn- यह एक लेज़ी वर्टिकल स्क्रोलिंग सूची है. इसमें स्केलिंग और मॉर्फ़िंग एनिमेशन काम करते हैं- हायरार्किकल फ़ोकस ग्रुप - इनका इस्तेमाल किसी ऐप्लिकेशन में कंपोज़ेबल को एनोटेट करने के लिए किया जाता है. इससे कंपोज़िशन के चालू हिस्से को ट्रैक किया जा सकता है और फ़ोकस को मैनेज किया जा सकता है.
- पेजर -
HorizontalPagerऔरVerticalPagerकॉम्पोनेंट, Compose Foundation कॉम्पोनेंट पर बनाए गए हैं. इनमें Wear OS के दिशा-निर्देशों का पालन करने और परफ़ॉर्मेंस को बेहतर बनाने के लिए, Wear से जुड़ी सुविधाएं जोड़ी गई हैं.
एपीआई में हुए बदलाव
- हायरार्किकल फ़ोकस एपीआई को अपडेट किया गया है.
Modifier.hierarchicalFocusका नाम बदलकरModifier.hierarchicalFocusGroupकर दिया गया है और कॉलबैक पैरामीटर हटा दिया गया है. साथ ही,Modifier.hierarchicalFocusRequesterके ओवरलोड कोFocusRequesterपैरामीटर से हटा दिया गया है. इसके अलावा, एक नयाCompositionLocal,LocalScreenIsActiveबनाया गया है, ताकि कॉम्पोनेंट यह सूचना दे सकें और यह जांच कर सकें कि कौनसी स्क्रीन चालू है. (I5ff7c). - Wear Compose Material और Wear Compose Material3 में
SwipeToRevealएपीआई के पक्ष में, Wear Compose Foundation सेSwipeToRevealको बंद कर दिया गया है. एपीआई का इस्तेमाल जारी रखने के लिए, कृपया Wear FoundationSwipeToRevealइंपोर्ट को Wear Compose Material/ Wear Compose Material3 इंपोर्ट से बदलें. (Ia147d). - Wear Compose Material3
SwipeToRevealकी Foundation पर मौजूद डिपेंडेंसी को material3 पैकेज में ले जाया गया है. जैसे,RevealValue,RevealDirection,RevealActionType,RevealState,rememberRevealState. डेवलपर को इन क्लास और फ़ंक्शन के इंपोर्ट कोandroidx.wear.compose.foundationसेandroidx.wear.compose.material3में बदलना होगा. (I640e6). - Wear Compose Material3
SwipeToRevealएपीआई को इन बदलावों के साथ अपडेट किया गया है:SwipeToRevealकंपोज़ेबल मेंprimaryAction,onFullSwipe,secondaryAction,undoPrimaryAction,undoSecondaryAction, औरhasPartiallyRevealedStateपैरामीटर जोड़े गए हैं;RevealStateसेpositionalThresholdऔरanimationSpecको पसंद के मुताबिक बनाने की सुविधा हटा दी गई है;RevealStateसेlastActionType,revealThreshold, और चौड़ाई हटा दी गई है;RevealStateकंस्ट्रक्टर को ऐंकर के बजायRevealDirectionस्वीकार करने के लिए बदल दिया गया है;createRevealAnchors, ऐंकर, औरbidirectionalAnchorsफ़ंक्शन हटा दिए गए हैं;SwipeToRevealScopeफ़ंक्शनprimaryAction,secondaryAction,undoPrimaryAction, औरundoSecondaryActionका नाम बदलकरPrimaryActionButton,SecondaryActionButton,UndoActionButtonकर दिया गया है. साथ ही, इन्हें कंपोज़ेबल फ़ंक्शन बना दिया गया है;RevealActionTypeको इंटरनल के तौर पर मार्क किया गया है. (I885d0). SwipeToRevealएपीआई को इस तरह अपडेट किया गया है:onFullSwipeका नाम बदलकरonSwipePrimaryActionकर दिया गया है;SwipeToRevealNonAnchoredSampleका नाम बदलकरhasPartiallyRevealedStateपैरामीटर के इस्तेमाल के बारे में बताया गया है;actionButtonHeightको हटा दिया गया है, क्योंकि डिफ़ॉल्ट रूप से बटन की ऊंचाई डिफ़ॉल्ट होती है और मॉडिफ़ायर का इस्तेमाल करके ऊंचाई को ज़्यादा पर सेट किया जा सकता है;SwipeToRevealDefaultsसेSmallActionButtonHeightको हटा दिया गया है;RevealValueऔरRevealDirectionकंस्ट्रक्टर में वैल्यू पैरामीटर को निजी बना दिया गया है. (I465ce).
गड़बड़ियां ठीक की गईं
ScreenScaffoldकेEdgeButtonको हैंडल करने की सुविधा को ठीक किया गया है, ताकिTransformingLazyColumnआइटम को हटाने के बाद,EdgeButtonको ऐनिमेशन के साथ अपनी जगह पर दिखाया जा सके. (I6d366).- Wear Compose की डिपेंडेंसी को Compose लाइब्रेरी के 1.8.0 वर्शन पर अपडेट किया गया. (I2ef3f).
- अनिश्चित
CircularProgressIndicatorकी मोशन को अपडेट किया गया है, ताकि यह अब कुछ समय के लिए पीछे न जाए. (Ieddb1). SwipeDismissableNavHostबग ठीक किया गया - वापस स्वाइप करने के बाद फ़ोकस सही तरीके से स्विच नहीं हो रहा था. इस वजह से, रोटरी इनपुट काम नहीं कर रहा था. यह समस्या API 36+ के लिए थी, जो अनुमान लगाने वाली सुविधा का इस्तेमाल करता है. (Ieddb1).- हायरार्किकल फ़ोकस एपीआई (Idf2ff) के लिए, दस्तावेज़ में बदलाव किया गया है.
- बटन और कार्ड के दस्तावेज़ को अपडेट किया गया है. इसमें बताया गया है कि
containerPainterऔरdisabledContainerPainter,containerColorऔरdisabledContainerColorको कैसे बदलता है (I4a453). - पिछली रिलीज़ में
TimeTextमें किए गए बदलाव को पहले जैसा कर दिया गया है. इस बदलाव में,BroadcastReceiverको वर्कर थ्रेड में ले जाया गया था. ऐसा इसलिए किया गया, क्योंकि इससे उन ऐप्लिकेशन को समस्याएं आ रही थीं जो नेविगेशन के दौरान अपनी थ्रेडिंग को मैनेज करते हैं. (I34d02). - Picker के सैंपल अपडेट किए गए हैं, ताकि याद रखने के लिए गैर-ज़रूरी कॉल हटाए जा सकें. इसके बजाय, Picker में
rememberUpdatedStateका इस्तेमाल करके,contentDescriptionlambda फ़ंक्शन को याद रखा जा सके. (Icb5b1). TimePickerऔरDatePickerमें टेक्स्ट स्टाइल अपडेट की गई हैं, ताकि फ़ॉन्ट बदलने पर टेक्स्ट अब छोटा न हो. (I26194).ListHeaderऔरListSubHeaderमें अब टेक्स्ट अलाइनमेंट डिफ़ॉल्ट रूप से, सेंटर में अलाइन और बाईं ओर अलाइन होता है. (I78339).- हमने Foundation और Material Swipe to Reveal के सैंपल और डेमो को अपडेट किया है. इससे कस्टम ऐक्सेसिबिलिटी कार्रवाइयों के बारे में सूचना दी जा सकेगी. कस्टम कार्रवाइयों को कॉन्टेंट पर सिमैंटिक के तौर पर जोड़ा जाना चाहिए, न कि
SwipeToRevealकंपोज़ेबल पर. (Ie92a3). MaxLinesकॉन्टेंट के साइज़ के हिसाब से,EdgeButtonपर सेट किए गए डिफ़ॉल्ट को अपडेट किया गया है. अब यह बहुत छोटे साइज़ के लिए 1, छोटे और मीडियम साइज़ के लिए 2, और बड़े साइज़ के लिए 3 है. (Ie35f6).LocalReduceMotionको आसान बनाया गया है, ताकि परफ़ॉर्मेंस को बेहतर बनाने के लिए, ऑब्ज़र्वर को सिर्फ़ एक बार रजिस्टर किया जाए. (Ib1979).- परफ़ॉर्मेंस को बेहतर बनाने के लिए,
ScrollIndicatorमें फिर से रेंडर होने की संख्या कम की गई है. (Ia7a67). TransformingLazyColumnमें मौजूद उस गड़बड़ी को ठीक किया गया है जिसमें EdgeButton की पूरी ऊंचाई होने पर, सूची में सबसे ऊपर दिखने वाला आइटम सही तरीके से स्केल नहीं होता था. (I30580).
वर्शन 1.5.0-alpha14
23 अप्रैल, 2025
androidx.wear.compose:compose-*:1.5.0-alpha14 रिलीज़ हो गया है. वर्शन 1.5.0-alpha14 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- Material
SwipeToRevealकी FoundationSwipeToRevealपर मौजूद सभी डिपेंडेंसी को Material पैकेज में ले जाया गया है. जैसे,RevealValue,RevealDirection,RevealActionType,RevealState,rememberRevealState. डेवलपर को इन क्लास और फ़ंक्शन के इंपोर्ट कोandroidx.wear.compose.foundationसेandroidx.wear.compose.materialमें बदलना होगा. (Ib7cb8) HierarchicalFocusCoordinatorके एपीआई को अपडेट किया गया है, ताकि कंपोज़ेबल के बजाय मॉडिफ़ायर का इस्तेमाल किया जा सके.- माइग्रेशन से जुड़ी ज़रूरी जानकारी:
HierarchicalFocusCoordinator(function, content)कोcontentया कंपोज़ेबल मेंModifier.hierarchicalFocus(function())जोड़कर बदला जा सकता है.ActiveFocusListener { if (it) focusRequester.requestFocus() }कोModifier.hierarchicalFocusRequester(focusRequester)जोड़कर बदला जा सकता हैActiveFocusListenerके अन्य कम इस्तेमाल किए जाने वाले मामलों में,Modifier.hierarchicalFocusपर नए पैरामीटर का इस्तेमाल किया जा सकता हैfocusRequester(rememberActiveFocusRequester())कोhierarchicalFocusRequester()से बदला जा सकता हैval focusRequester = rememberActiveFocusRequester()कोremember { FocusRequester() }औरModifier.hierarchicalFocusRequester(focusRequester)जोड़कर बदला जा सकता है. (Ie319a)
गड़बड़ियां ठीक की गईं
- इन कॉम्पोनेंट के लिए, स्वाइप जेस्चर की वेलोसिटी थ्रेशोल्ड को बढ़ा दिया गया है:
SwipeToReveal,BasicSwipeToDismissBox, औरSwipeDismissableNavHost.SwipeDismissableNavHostके लिए, यह बदलाव सिर्फ़ API 35 और इससे पहले के वर्शन पर लागू होगा. (If47bf) TransformingLazyColumnमें नए आइटम जोड़े जाने पर, ऐनिमेशन से जुड़ी समस्या को ठीक किया गया है. (I589b2)
वर्शन 1.5.0-alpha13
9 अप्रैल, 2025
androidx.wear.compose:compose-*:1.5.0-alpha13 रिलीज़ हो गया है. वर्शन 1.5.0-alpha13 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- Kotlin 2.0 के साथ रिलीज़ किए गए प्रोजेक्ट के लिए, KGP 2.0.0 या इसके बाद के वर्शन का इस्तेमाल करना ज़रूरी है (Idb6b5)
PagerStateमेंtargetPageप्रॉपर्टी जोड़ी गई (I4de8b)
गड़बड़ियां ठीक की गईं
- अनुमानित बैक नेविगेशन के दौरान, बेवजह के रीकंपोज़िशन को रोकता है. (Iecd6d)
ScrollInfoProviderकीisScrollableप्रॉपर्टी को ठीक किया गया है, ताकि मौजूदा वैल्यू दिखाई जा सके. (Icbfb8)
वर्शन 1.5.0-alpha12
26 मार्च, 2025
androidx.wear.compose:compose-*:1.5.0-alpha12 रिलीज़ हो गया है. वर्शन 1.5.0-alpha12 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
SwipeToRevealके डिफ़ॉल्ट तरीके को बेहतर बनाया गया है, ताकिgestureInclusionसिर्फ़ तब जेस्चर को अनदेखा करे, जब कॉम्पोनेंट की स्थिति Covered हो. (I7e3d6)SwipeToRevealके लिए,bidirectionalGestureInclusionको फ़ंक्शन के बजाय वैल्यू बनाया गया है. साथ ही,gestureInclusionमेंedgeZoneFractionपैरामीटर में@FloatRangeजोड़ा गया है. (Ica7c3)
गड़बड़ियां ठीक की गईं
- क्लास के बजाय ऑब्जेक्ट को वापस लाने के लिए,
SwipeToRevealbidirectionalGestureInclusionको बदलें. (I29597) RoboElectricमें टेस्ट चलाने के दौरान, हैप्टिक का इस्तेमाल बंद कर दिया गया है. (I58bd1)- कॉन्टेंट और ऐक्शन बटन के बीच की
SwipeToRevealपैडिंग को अपडेट किया गया है. साथ ही, ऐक्शन बटन के आइकॉन और टेक्स्ट के बीच की पैडिंग को भी अपडेट किया गया है. (Ic46cb)
वर्शन 1.5.0-alpha11
12 मार्च, 2025
androidx.wear.compose:compose-*:1.5.0-alpha11 रिलीज़ हो गया है. वर्शन 1.5.0-alpha11 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
PagerStateको अपडेट किया गया है. इसमें Compose FoundationPagerStateको बेस क्लास के तौर पर हटाया गया है. साथ ही,currentPage,currentPageOffsetFraction, औरpageCountप्रॉपर्टी जोड़ी गई हैं.GestureInclusionइंटरफ़ेस को अपडेट किया गया है. साथ ही, इस तरीके का नाम बदलकरignoreGestureStartकर दिया गया है. (I4ae07)SwipeToDismissBoxStateके ऑफ़सेट को पाने के लिए,requireOffsetकोSwipeToDismissBoxStateमें जोड़ें. (I21042)CurvedModifier.semanticsजोड़ा गया. यह शुरू में, कॉन्टेंट की जानकारी और ट्रैवर्सल इंडेक्स (I0b093) के साथ काम करता है- हमने
CurvedModifier.clearAndSetSemanticsजोड़ा है, ताकि घुमावदार सिमैंटिक को बंद किया जा सके.CurvedTextअब भी कॉन्टेंट के ब्यौरे को डिफ़ॉल्ट रूप से टेक्स्ट पर सेट करता है. हालांकि,timeTextCurvedTextऔरtimeTextSeparatorअब अपने कॉन्टेंट का एलान नहीं करते हैं. (I4b568) HorizontalPagerमें स्वाइप जेस्चर को हैंडल करने के डिफ़ॉल्ट तरीके का नाम बदलकरPagerDefaults.gestureInclusionकर दिया गया है. डिफ़ॉल्ट तौर पर, अब सिर्फ़ उन स्वाइप जेस्चर को अनदेखा किया जाएगा जो पहले पेज के बाईं ओर से शुरू होते हैं. ऐसा सिर्फ़ तब होगा, जब TalkBack बंद हो. अन्य मामलों में, डिफ़ॉल्ट तौर पर स्वाइप जेस्चर को पेजर अनदेखा नहीं करेगा. इसलिए, वे स्वाइप करके खारिज करने वाले हैंडलर के लिए उपलब्ध नहीं होंगे. (Iee486)rotaryScrollableएपीआई के लिए, रोटरी ओवरस्क्रॉल की सुविधा जोड़ी गई.rotaryScrollableफ़्लिंग के व्यवहार में ओवरस्क्रोल और नेस्टेड स्क्रोल की सुविधा जोड़ी गई. इस बदलाव के बाद, टच स्क्रोल और रोटरी स्क्रोल की सुविधा में ओवरस्क्रोल और नेस्टेड स्क्रोल की सुविधा एक जैसी हो जाएगी. (I71926)SwipeToRevealमें, किनारे से स्वाइप करने वाले ज़ोन के लिए सहायता जोड़ी गई. FoundationSwipeToRevealमें अब डिफ़ॉल्ट रूप से, किनारे से शुरू होने वाले जेस्चर के लिए स्वाइप करने की अनुमति नहीं दी जाती. Material3SwipeToRevealका डिफ़ॉल्ट व्यवहार अब यह है कि जब जेस्चर किनारे से शुरू होता है, तो स्वाइप करने की अनुमति नहीं दी जाती है. ऐसा तब होता है, जबSwipeDirectionको एक ही दिशा में सेट किया जाता है. (I32ef0)- TLC अब पहले और आखिरी आइटम को बीच में रखने के बजाय, डिफ़ॉल्ट रूप से खाली contentPadding का इस्तेमाल करता है. (I77ab7)
गड़बड़ियां ठीक की गईं
- Wear Compose लाइब्रेरी को Kotlin 2.0 कंपाइलर पर अपडेट किया गया है. (I2de79)
- फ़ाउंडेशन पर घुमावदार
LetterSpacingके सैंपल को ठीक किया गया. (Iebf7c)
वर्शन 1.5.0-alpha10
26 फ़रवरी, 2025
androidx.wear.compose:compose-*:1.5.0-alpha10 रिलीज़ हो गया है. वर्शन 1.5.0-alpha10 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
SwipeToRevealDefaultsको सार्वजनिक करें. (I0c34c)- हमने
HorizontalPagerमेंswipeToDismissEdgeZoneFractionपैरामीटर को बदल दिया है. इसके बजाय, एक नया पैरामीटरgestureInclusionपेश किया गया है. इसका इस्तेमाल, स्वाइप करके खारिज करने की सुविधा को चालू करने के लिए किया जा सकता है.gestureInclusion,GestureInclusionका एक इंस्टेंस लेता है. इससे यह तय होता है कि स्क्रोल करने का अगला इवेंट जारी रहना चाहिए या नहीं. किसी जेस्चर को अनुमति देने का मतलब है कि Pager उसका इस्तेमाल करेगा. ऐसा न करने पर, उसे किसी दूसरी जगह पर हैंडल किया जाएगा. जैसे, स्वाइप करके खारिज करने वाले हैंडलर से. डिफ़ॉल्ट रूप से, Pager में पहले पेज के सबसे बाईं ओर के किनारे पर जेस्चर इस्तेमाल करने की अनुमति नहीं दी जाती है. इसलिए, इस जगह पर स्वाइप करके खारिज करने की अनुमति दी जाती है. अन्य सभी पेजों पर, Pager को सभी जेस्चर इस्तेमाल करने की अनुमति होगी. इसका मतलब है कि उन्हें स्वाइप करके खारिज नहीं किया जा सकता. सभी पेजों पर स्वाइप करके खारिज करने की सुविधा पाने के लिए, बस एक कस्टमGestureInclusionइंस्टेंस (PagerDefaults.disableLeftEdgeOnFirstPageदेखें) उपलब्ध कराएं, जो मौजूदा पेज को अनदेखा करता हो. यहां एक और बड़ा बदलाव किया गया है. अब Pager कॉम्पोनेंट डिफ़ॉल्ट रूप से फ़ुल स्क्रीन पर नहीं दिखता. इसके बजाय, इस तरह का व्यवहार पाने के लिएModifier.fillMaxSize()जोड़ें. (I9d3aa) - हमने स्वाइप करके जानकारी दिखाने वाले एपीआई(If5999) में,
createAnchorsका नाम बदलकरcreateRevealAnchorsकर दिया है - हमने स्वाइप करके जानकारी ज़ाहिर करने वाले एपीआई से
RevealScopeको हटा दिया है. (Ie4ad5) - हमने स्वाइप करके जानकारी ज़ाहिर करने वाले एपीआई में,
RevealValueसे Revealing और Revealed को हटा दिया है. (I8dbc5) - हमने स्वाइप करके जानकारी दिखाने वाले एपीआई में,
SwipeDirectionका नाम बदलकरRevealDirectionकर दिया है. (I7472f) - हमने
SwipeToRevealकेrememberRevealStateफ़ंक्शन केpositionalThresholdपैरामीटर के सिग्नेचर में बदलाव किया है. (I29c0a) - हमने
ScalingLazyColumn,TransformingLazyColumn, औरScreenScaffoldमें एक नयाoverscrollEffectपैरामीटर जोड़ा है. (I0cee8) PagerDefaults#snapFlingBehaviourका इस्तेमाल करते समय,pagerSnapDistanceपैरामीटर को Int पैरामीटरmaxFlingPagesसे बदल दिया गया है. इसका इस्तेमाल, पेजर को फ़्लिंग करने के लिए ज़्यादा से ज़्यादा पेजों की संख्या तय करने के लिए किया जा सकता है. (I8cfc0)- Wear Pager में अब Compose Foundation
PagerScopeका इस्तेमाल करने के बजाय, अपनाPagerScopeहै. (I9195b) - हमने घुमावदार टेक्स्ट (I1c936) पर
lineHeightके लिए सहायता जोड़ी है - हमने
TransformingLazyColumnStateमेंinitialAnchorItemIndexऔरinitialAnchorItemOffsetको जोड़ा है. साथ ही,rememberTransformingLazyColumnStateको जोड़ा है, ताकिTransformationLazyColumnमें शुरुआती स्क्रोल पोज़िशन तय की जा सके. (I0a0d5) runWithTimingDisabledको बंद करकेrunWithMeasurementDisabledको चालू करें. इससे यह पता चलता है कि सभी मेट्रिक को रोक दिया गया है. इसके अलावा,MicrobenchmarkScopeसुपरक्लास को दिखाएं, क्योंकिrunWithMeasurementDisabledफ़ंक्शन को फिर से एलान करके ऐक्सेस नहीं किया जा सकता. ऐसा इसलिए है, क्योंकि यह इनलाइन है. (I9e23b, b/389149423, b/149979716)- हमने एपीआई में
TransformingLazyColumnItemScrollProgress.Unspecifiedको जोड़ा है, ताकिTransformingLazyColumnItemScrollProgressपर बॉक्सिंग से बचा जा सके. (I0835d)
गड़बड़ियां ठीक की गईं
CurvedTextStyle(Id45e3) के लिए Kdoc को बेहतर बनाएं- हमने
SwipeableV2(SwipeToRevealको लागू करने का हिस्सा) को सार्वजनिक के बजाय, सिर्फ़ लाइब्रेरी ग्रुप के लिए उपलब्ध कराया है. (Idbb94) - हमने
HierarchicalFocusCoordinatorमें टेस्ट जोड़े हैं (I1ce54, b/395548918) - हमने Wear Compose के फ़ाउंडेशन सैंपल में
SwipeToRevealसे जुड़े सुधार किए हैं. (I5f307) - सुलभता के लिए,
TransformingLazyColumnमेंverticalScrollAxisRangeके स्क्रोल ऐक्सिस के सिमैंटिक डेटा से जुड़ी समस्या ठीक की गई (I68123) - गैर-ज़रूरी बैकग्राउंड थ्रेड (I39cfe) हटाकर, Wear4+ पर रोटरी हैप्टिक की परफ़ॉर्मेंस को बेहतर बनाया गया
- एपीआई 36 और इसके बाद के वर्शन पर, सिर्फ़
PredictiveBackNavHostका इस्तेमाल करने के लिएSwipeDismissableNavHostको बदलें. (I59bed) - हमने 'मोशन कम करें' सेटिंग को ऐक्सेस करते समय क्रैश होने से बचाने के लिए, एक सुरक्षा सुविधा जोड़ी है. (I01e2c)
- हमने
TransformingLazyColumnके लिए प्रीफ़ेचिंग लागू की है, ताकि जंक को कम किया जा सके (Icca88)
वर्शन 1.5.0-alpha09
29 जनवरी, 2025
androidx.wear.compose:compose-*:1.5.0-alpha09 रिलीज़ हो गया है. वर्शन 1.5.0-alpha09 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
CurvedTextStyleमें, हमने अक्षरों के बीच की दूरी को घड़ी की दिशा में अक्षरों के बीच की दूरी और घड़ी की उल्टी दिशा में अक्षरों के बीच की दूरी में बांटा है. ऐसा इसलिए ज़रूरी है, क्योंकि घड़ी की सुई की दिशा में लिखे गए अक्षर, बेसलाइन से बाहर की ओर फैलते हैं. वहीं, घड़ी की सुई की उलटी दिशा में लिखे गए अक्षर, बेसलाइन की ओर फैलते हैं. इसलिए, अक्षरों के बीच ज़्यादा दूरी की ज़रूरत होती है (I4b848)CompositionLocalLocalReduceMotionको आसान बना दिया गया है, ताकि यहReduceMotionऑब्जेक्ट के बजाय बूलियन वैल्यू लौटा सके.ReduceMotionइंटरफ़ेस अब काम नहीं करता.LocalReduceMotion.current.enabled()जैसे पिछले इनवोकेशन कोLocalReduceMotion.current(I4937f) से बदला जा सकता हैPagerDefaultsमें,snapAnimationSpecका नाम बदलकरSnapAnimationSpecकर दिया गया है. (I20c9a)
वर्शन 1.5.0-alpha08
15 जनवरी, 2025
androidx.wear.compose:compose-*:1.5.0-alpha08 रिलीज़ हो गया है. वर्शन 1.5.0-alpha08 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- हमने Wear Compose की सभी लाइब्रेरी को ‘एक्सप्लिसिट एपीआई’ मोड में अपडेट कर दिया है. (Iebf9f)
- हमने पेजर के स्नैप ऐनिमेशन पैरामीटर को
PagerDefaultsका हिस्सा बना दिया है. (Ifff64) - हमने
SwipeToDismissBoxStateमें एक ऑफ़सेट पैरामीटर जोड़ा है. (I586bd)
गड़बड़ियां ठीक की गईं
- रोटरी प्लैटफ़ॉर्म हैप्टिक को अब Wear OS के V (Idb03e) के बाद वाले वर्शन के लिए कॉल किया जाता है
वर्शन 1.5.0-alpha07
11 दिसंबर, 2024
androidx.wear.compose:compose-*:1.5.0-alpha07 रिलीज़ हो गया है. वर्शन 1.5.0-alpha07 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
TransformingLazyColumnStateअब ऐंकर आइटम इंडेक्स के आधार पर, स्क्रोल करने की मौजूदा प्रोग्रेस को देखने का तरीका उपलब्ध कराता है. (I72b01)- हमने
TransformingLazyColumnमें ऐनिमेशन जोड़े हैं. ये ऐनिमेशन, आइटम जोड़ने, हटाने, और उन्हें एक जगह से दूसरी जगह ले जाने पर दिखते हैं. हालांकि, ऐसा तब होता है, जब आइटम में नयाModifier.animateItemमौजूद हो. (Iecb9c) TransformingLazyColumnअबbeforeContentPaddingऔरafterContentPaddingके लिए वैल्यू दिखाता है. (Iccd5f)TransformingLazyColumnअब कंपोज़िशन लोकलLocalTransformingLazyColumnItemScopeउपलब्ध कराता है. इसका इस्तेमाल कॉम्पोनेंट (जैसे कि Material3 मेंCardऔरButton) कर सकते हैं. इससे,TransformingLazyColumnमें रखे जाने पर कॉम्पोनेंट अपने-आप बदल जाते हैं. कॉल करने वाले लोग, नएTransformExclusionरैपर का इस्तेमाल करके, आवाज़ के अपने-आप बदलने की सुविधा बंद कर सकते हैं. (I1652f)
गड़बड़ियां ठीक की गईं
- हमने U और इसके बाद के वर्शन को टारगेट करने वाले डिवाइसों पर, रोटरी के लिए कम से कम और ज़्यादा से ज़्यादा फ़्लिंग वेलोसिटी को अपडेट किया है. (I33559)
- हमने उस क्रैश को ठीक कर दिया है जो तब होता था, जब
TransformingLazyColumnमें मौजूद किसी आइटम में कोई कंपोज़ेबल (Idb99d) नहीं होता था - हमने Android Vanilla ice cream पर रोटरी हैप्टिक्स के लिए
ScrollFeedbackProviderसहायता जोड़ी है. (Ibc553) - हमने
SwipeToRevealका इस्तेमाल करते समय, टच स्लोप को बढ़ा दिया है. इससे वर्टिकल स्क्रोलिंग के दौरान, गलती से स्वाइप ट्रिगर होने की संभावना कम हो जाती है. (Ic0672) - हमने
SwipeDismissableNavHostको अपडेट कर दिया है, ताकि एपीआई लेवल 35 और उसके बाद के वर्शन के साथPredictiveBackHandlerका इस्तेमाल किया जा सके. ऐसे में, नए ऐनिमेशन लागू किए जाएंगे. (I08c11)
वर्शन 1.5.0-alpha06
13 नवंबर, 2024
androidx.wear.compose:compose-*:1.5.0-alpha06 रिलीज़ हो गया है. वर्शन 1.5.0-alpha06 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- हमने
PagerStateके लिएScrollInfoProviderको आसान बना दिया है. इसके लिए, हमनेorientationपैरामीटर को हटा दिया है, जिसकी अब ज़रूरत नहीं है. नई सुविधा के तहत, हॉरिज़ॉन्टल और वर्टिकल, दोनों तरह के पेजिंग के लिएTimeTextको एक ही जगह पर रखा जाएगा. (I71767) TransformingLazyColumnको पिछली रिलीज़ में पेश किया गया था. अब हम Wear केLazyColumnएलियास (जोTransformingLazyColumnपर फ़ॉरवर्ड हो रहे थे) को हटा रहे हैं. इसके बजाय, हमTransformingLazyColumnका इस्तेमाल करेंगे. हमनेTransformingLazyColumnVisibleItemInfoकीheightप्रॉपर्टी को भी हटा दिया है. कृपया इसके बजाय,measuredHeightका इस्तेमाल करें. (I0ea1e)- हमने
PagerDefaults.snapFlingBehaviorsnapAnimationSpecकोTweenसे बदलकरSpringकर दिया है.(I10d02, b/349781047, b/303807950) - हमने
LocalReduceMotionCompositionLocalको स्टेबल (Ia6f32) पर प्रमोट कर दिया है
गड़बड़ियां ठीक की गईं
- हमने
Modifier.rotaryScrollableको अपडेट किया है, ताकि रोटरी में बेहतर सिमैंटिक सपोर्ट के लिएfocusTargetWithSemanticsका इस्तेमाल किया जा सके. (Ief0a0) - हमने Compose लाइब्रेरी के लिए, एपीआई डिपेंडेंसी को 1.7.4 पर अपडेट कर दिया है. (I88b46)
- हमने क्लिपिंग से जुड़ी गड़बड़ी को ठीक करने के लिए,
TransformingLazyColumnमें चौड़ाई बदलने की सुविधा बंद कर दी है. (I3dfb8) - हमने एक गड़बड़ी ठीक की है. इसकी वजह से,
TransformingLazyColumn(Id7668) का इस्तेमाल करके ओवरस्क्रोल करने पर आइटम गायब हो जाते थे - हमने
TransformingLazyColumnके लिएLazyLayoutSemanticsको जोड़ दिया है. (Ia8f56)
वर्शन 1.5.0-alpha05
30 अक्टूबर, 2024
androidx.wear.compose:compose-*:1.5.0-alpha05 रिलीज़ हो गया है. वर्शन 1.5.0-alpha05 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- हमने
TransformingLazyColumnStateपरanimateScrollToके लिए सहायता जोड़ी है, ताकि किसी आइटम पर स्क्रोल करने पर ऐनिमेशन दिखाया जा सके. (I4097d) - हमने
TransformingLazyColumnStateपरrequestScrollToजोड़ा है, ताकि अगली मेज़रमेंट तक स्क्रोलिंग को टाला जा सके. (I20a5e) - हमने
TransformingLazyColumnमें,contentPaddingके काम करने की सुविधा जोड़ी है. (I3a69c)
गड़बड़ियां ठीक की गईं
- हमने
TransformingLazyColumnको रेंडर करने से जुड़े एक बग को ठीक कर दिया है. यह बग तब दिखता था, जब कॉन्टेंट की ऊंचाई, स्क्रीन की ऊंचाई से कम होती थी. (I6c3e1) TransformingLazyColumnके लिएScrollInfoProvderअब पहले आइटम को सही तरीके से ट्रैक करता है. (I1e4a3)TransformingLazyColumnStateअब अपनी स्थिति (anchorItemIndexऔरanchorItemScrollOffset) सेव करता है. (I3d265)
वर्शन 1.5.0-alpha04
16 अक्टूबर, 2024
androidx.wear.compose:compose-*:1.5.0-alpha04 रिलीज़ हो गया है. वर्शन 1.5.0-alpha04 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- हमने Wear Compose Foundation
LazyColumnका नाम बदलकरTransformingLazyColumnकर दिया है, ताकि इस और Compose FoundationLazyColumnके बीच का अंतर साफ़ तौर पर पता चल सके. (I0608b) - हॉरिजॉन्टल/वर्टिकल पेजर्स के लिए रोटरी कंट्रोल की सुविधा जोड़ी गई है. इससे उपयोगकर्ता, रोटरी इनपुट डिवाइसों का इस्तेमाल करके पेजर्स पर नेविगेट कर सकते हैं. (I9770d)
- हमने नए
PagerDefaultsको अपडेट किया है, ताकि यह साफ़ तौर पर बताया जा सके कि डिफ़ॉल्ट रूप से पेजर, पेज पर स्नैप-टू-पेज होगा. (Iff7d0) TransformingLazyColumnItemScrollProgressअब एक वैल्यू क्लास है. इससे परफ़ॉर्मेंस बेहतर होनी चाहिए. (Ic399e)TransformingLazyColumnअब रोटरी कंट्रोल के साथ काम करता है. (I05206)TransformingLazyColumnStateअबscrollToItemके साथ काम करता है. (I507b3)SwipeToRevealAPI (I34a66) से@ExperimentalWearFoundationApiहटाया गया
वर्शन 1.5.0-alpha03
2 अक्टूबर, 2024
androidx.wear.compose:compose-*:1.5.0-alpha03 रिलीज़ हो गया है. वर्शन 1.5.0-alpha03 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- हमने
SwipeToRevealमें दोनों दिशाओं में स्वाइप करने की सुविधा जोड़ी है. ऐसा उन मामलों में किया गया है जहां मौजूदा स्क्रीन पर स्वाइप करके खारिज करने की सुविधा काम नहीं करती. . डिफ़ॉल्ट रूप से, अब भी सिर्फ़ दाईं से बाईं ओर स्वाइप करने पर सूचना दिखती है. हमारा सुझाव है कि आप डिफ़ॉल्ट सेटिंग का इस्तेमाल करें, ताकि सूचना को खारिज करने के लिए स्वाइप करने की सुविधा के साथ कोई टकराव न हो. (Ifac04) - हमने
LazyColumnStateको अपडेट किया है, ताकिcanScrollForwardऔरcanScrollBackwardको बदला जा सके. अब पहले या आखिरी आइटम के स्क्रीन के ठीक बीच में होने पर, स्क्रोलिंग रुक जाती है. (Ia77d7) - हमने नए
HorizontalPagerऔरVerticalPagerकॉम्पोनेंट जोड़े हैं. इनसे Wear पर होने वाली सामान्य समस्याओं को हल किया जा सकता है. जैसे, फ़ोकस हैंडलिंग और सिस्टम स्वाइप करके खारिज करने की सुविधा के साथ इंटरैक्ट करना. (I2902b) - हमने
LazyColumnके लिए सहायता जोड़ी है, ताकिlayoutItemsके ज़रिए क्लाइंट केkeyऔरcontentTypeको दिखाया जा सके. (I1bd9c)
गड़बड़ियां ठीक की गईं
- हमने पेंट फ़्लैग का इस्तेमाल करके, घुमावदार टेक्स्ट वाले ऐनिमेशन को और बेहतर बनाया है. (I73a15)
- हमने Material Dialog के दस्तावेज़ को अपडेट किया है. इससे यह पता चलता है कि show फ़्लैग को false पर सेट करने के बाद,
onDismissRequestको कॉल नहीं किया जाता है. (Ifd8d6) - हमने Material Dialog (I126bf) में विनेट ऐनिमेशन से जुड़ी गड़बड़ी को ठीक कर दिया है
वर्शन 1.5.0-alpha02
18 सितंबर, 2024
androidx.wear.compose:compose-*:1.5.0-alpha02 रिलीज़ हो गया है. वर्शन 1.5.0-alpha02 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- हमने अपने
ScreenScaffoldके साथ Wear ComposeLazyColumnके लिए सहायता जोड़ी है. साथ ही,LazyColumnStateके लिएScrollInfoProviderको लागू किया है. (Ib8d29) - हमने
viewportSizeकोLazyColumnLayoutInfoमें जोड़ दिया है. (I4187f)
गड़बड़ियां ठीक की गईं
- हमने एक गड़बड़ी को ठीक कर दिया है. अब
userScrollEnabledफ़्लैग कोfalseपर सेट करने पर,ScalingLazyColumnमें रोटरी स्क्रोलिंग की सुविधा बंद हो जाएगी. (I490ab, b/360295825) - हमने एक गड़बड़ी ठीक की है. इसकी वजह से, घुमावदार टेक्स्ट पर अनचाहा वर्टिकल पैडिंग दिखता था. अब घुमावदार टेक्स्ट की ऊंचाई, टेक्स्ट के लिए इस्तेमाल की गई जगह से ज़्यादा मेल खाती है. कृपया ध्यान दें कि इससे घुमावदार टेक्स्ट (Iaa6ef) वाली स्क्रीनशॉट टेस्ट में गड़बड़ी हो सकती है
- हमने
Dialogमें गड़बड़ी को ठीक करने के लिए किए गए बदलाव को पहले जैसा कर दिया है. इस गड़बड़ी की वजह से,showDialogको फ़ॉल्स पर सेट करने परonDismissRequestकॉलबैक को कॉल किया जाता था. ऐसा इसलिए किया गया है, क्योंकि कुछ मामलों मेंonDismissRequestको कई बार कॉल किया जाता था. (I64656)
वर्शन 1.5.0-alpha01
4 सितंबर, 2024
androidx.wear.compose:compose-*:1.5.0-alpha01 रिलीज़ हो गया है. वर्शन 1.5.0-alpha01 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- हमने Wear Compose Foundation लाइब्रेरी में एक नया
LazyColumnजोड़ा है. साथ ही, इससे जुड़ेLazyColumnStateऔरLazyColumnScopeएपीआई भी जोड़े हैं. यह Wear Compose के साथ, पसंद के मुताबिक बनाए जा सकने वाले स्केलिंग और मॉर्फ़िंग इफ़ेक्ट बनाने के लिए आधार का काम करता है. (Ib3b22) - हमने नए
LazyColumnएपीआई के तहत,LazyColumnScopeमेंitemsIndexedका इंडेक्स किया गया वर्शन जोड़ा है. (Ib4a57) - हमने
LazyColumnमॉडिफ़ायर जोड़े हैं, ताकि स्केलिंग और मॉर्फ़िंग के व्यवहारों को बेहतर तरीके से दिखाया जा सके. (Ie229a) HierarchicalFocusCoordinatorको स्टेबल वर्शन में अपग्रेड कर दिया गया है. (I31035)- हमने घुमावदार टेक्स्ट के लिए, अक्षरों के बीच की दूरी को सेट करने की सुविधा जोड़ी है. (I3c740)
- कॉम्पोनेंट को रोटेट होने से रोकने के लिए,
CurvedLayout.curvedComposableमेंrotationLockedपैरामीटर जोड़ा गया. (I66898) - wear material और wear material3 से, अस्थायी
LocalUseFallbackRippleImplementationएपीआई हटा दिया गया है (I62282) @WearPreviewDevicesमल्टी-प्रीव्यू (I11c02) सेWearDevices.SQUAREको हटाया गया
गड़बड़ियां ठीक की गईं
SwipeToRevealअब दिखाए गए आइटम को स्क्रीन के दिखने वाले हिस्से पर रखता है. इससे, सूची मेंSwipeToRevealका इस्तेमाल करने पर मदद मिलती है, ताकि आइटम हमेशा इंटरैक्ट किए जा सकें और कभी भी स्क्रीन से बाहर न जाएं. (I38929)SwipeToRevealअबanimatedToके पूरा होने पर,lastActionTypeको 'कोई नहीं' पर रीसेट कर देता है. (I59b03)curvedComposableपर मौजूद नएrotationLockedपैरामीटर के दस्तावेज़ को बेहतर बनाया गया है. (Ifbd57)NaNकोScalingLazyColumnSnapFlingBehaviorकेperformFlingमें पास करते समय क्रैश होने की समस्या को ठीक किया गया है. (Ic13da)- घुमावदार लेआउट के साइज़ में बदलाव करने वाले मॉडिफ़ायर (I0fedf) से जुड़ी गड़बड़ी ठीक की गई
- हमने 'sp' में तय की गई लेटर स्पेसिंग के लिए सहायता जोड़ी है. (I9f6e3)
- हमने Material2 Dialog में मौजूद एक गड़बड़ी को ठीक किया है. इस गड़बड़ी की वजह से, डायलॉग के दिखने पर
onDismissRequestकॉलबैक को कॉल नहीं किया जा रहा था (I64656) - इसके मकसद को बेहतर तरीके से दिखाने के लिए,
LayoutCoordinates.introducesFrameOfReferenceका नाम बदलकरLayoutCoordinates.introducesMotionFrameOfReferenceकर दिया गया है. उस फ़्लैग के आधार पर कोऑर्डिनेट का हिसाब लगाने के लिए, संबंधित फ़ंक्शन का नाम बदला गया. (I3a330)
वर्शन 1.4
वर्शन 1.4.1
12 फ़रवरी, 2025
androidx.wear.compose:compose-*:1.4.1 रिलीज़ हो गया है. वर्शन 1.4.1 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- हमने ग्लोबल रिड्यूसमॉशन सेटिंग को ऐक्सेस करते समय क्रैश होने की समस्या को ठीक किया है. यह समस्या कुछ ऐसे प्लैटफ़ॉर्म पर ट्रिगर हुई थी जहां यह सेटिंग उपलब्ध नहीं थी. (I01e2c)
वर्शन 1.4.0
4 सितंबर, 2024
androidx.wear.compose:compose-*:1.4.0 रिलीज़ हो गया है. वर्शन 1.4.0 में ये बदलाव शामिल हैं.
1.3.0 के बाद हुए अहम बदलाव
ScalingLazyColumnऔरPickerअब डिफ़ॉल्ट रूप से रोटरी इनपुट के साथ काम करते हैं. हमारा सुझाव है कि रोटरी हैंडलिंग को हटा दें और सिस्टम के डिफ़ॉल्ट तरीके का इस्तेमाल करें. ज़रूरत पड़ने पर, स्क्रोल या स्नैप बिहेवियर को कॉन्फ़िगर करने के लिए,rotaryScrollableBehaviorपैरामीटर का इस्तेमाल करें. स्नैप बिहेवियर के लिए, हमारा सुझाव है किflingBehaviorपैरामीटर का इस्तेमाल करके, स्नैप बिहेवियर और टच स्क्रोलिंग की सुविधाएं दें.Modifier.rotaryScrollableएक नया मॉडिफ़ायर है. यह रोटरी इवेंट को स्क्रोल किए जा सकने वाले कंटेनर से कनेक्ट करता है. इससे उपयोगकर्ता, अपने Wear OS डिवाइस पर क्राउन या रोटेटिंग बेज़ल का इस्तेमाल करके स्क्रोल कर सकते हैं.SwipeDismissableNavHostअब ऐप्लिकेशन में ट्रांज़िशन के लिए, एंट्री ऐनिमेशन उपलब्ध कराता है.- अब स्क्रीन पहली बार दिखने पर,
PositionIndicatorडिफ़ॉल्ट रूप से दिखता है.
अन्य बदलाव
- वर्शन 1.3.0 में किए गए बदलावों के बारे में ज़्यादा जानने के लिए, beta01 के रिलीज़ नोट देखें.
वर्शन 1.4.0-rc01
21 अगस्त, 2024
androidx.wear.compose:compose-*:1.4.0-rc01 रिलीज़ हो गया है. वर्शन 1.4.0-rc01 में ये बदलाव शामिल हैं.
- हमने Compose की डिपेंडेंसी को 1.7.0-rc01 पर अपडेट किया है. साथ ही, Wear Compose Navigation को androidx.lifecycle 2.8.3 पर पिन किया है
वर्शन 1.4.0-beta03
12 जून, 2024
androidx.wear.compose:compose-*:1.4.0-beta03 रिलीज़ हो गया है. वर्शन 1.4.0-beta03 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- हमने
Modifier.rotaryScrollableको अपडेट किया है. अब इसमें ‘focusable’ के बजाय ‘focusTarget’ का इस्तेमाल किया जाएगा. इससे परफ़ॉर्मेंस बेहतर होती है. (Id294b) - हमने उस समस्या को ठीक कर दिया है जिसमें
TalkBackके तहतProgressIndicatorबार-बार सूचना दे रहा था. (I94563) - हमने Wear Compose लाइब्रेरी की बेसलाइन प्रोफ़ाइलों को अपडेट किया है. (I3cbc3)
वर्शन 1.4.0-beta02
29 मई, 2024
androidx.wear.compose:compose-*:1.4.0-beta02 रिलीज़ हो गया है. वर्शन 1.4.0-beta02 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- हमने स्क्रीन रीडर को पास की गई बाउंड्री की चौड़ाई को बढ़ा दिया है, ताकि घुमावदार टेक्स्ट में शब्दों के कटने की समस्या को ठीक किया जा सके (Id865f).
- हमने स्क्रीन रीडर को पास किए गए
HorizontalPageIndicatorकी सीमा तय कर दी है. इससे पहले, इंडिकेटर पूरी स्क्रीन पर दिखता था (Id8d7a).
वर्शन 1.4.0-beta01
14 मई, 2024
androidx.wear.compose:compose-*:1.4.0-beta01 रिलीज़ हो गया है. वर्शन 1.4.0-beta01 में ये बदलाव शामिल हैं.
Compose for Wear OS के 1.4-beta01 वर्शन से पता चलता है कि इस लाइब्रेरी का यह वर्शन, सभी सुविधाओं के साथ उपलब्ध है. साथ ही, एपीआई लॉक है. हालांकि, जहां एक्सपेरिमेंट के तौर पर मार्क किया गया है वहां एपीआई लॉक नहीं है. Wear Compose 1.4 में ये नई सुविधाएं शामिल हैं:
- हमने
Modifier.rotaryScrollableजोड़ा है. यह एक नया मॉडिफ़ायर है, जो रोटरी इवेंट को स्क्रोल किए जा सकने वाले कंटेनर से कनेक्ट करता है. इससे उपयोगकर्ता, Wear OS डिवाइस पर मौजूद क्राउन या रोटेटिंग बेज़ल की मदद से स्क्रोल कर सकते हैं. इसके अलावा,ScalingLazyColumnऔरPickerमें अब डिफ़ॉल्ट रूप से रोटरी इनपुट की सुविधा काम करती है. स्क्रोल या स्नैप के व्यवहार को कॉन्फ़िगर करने के लिए,rotaryScrollableBehaviorपैरामीटर का इस्तेमाल करें. स्नैप बिहेवियर के लिए, हमारा सुझाव है कि टच स्क्रोलिंग के लिए भीflingBehaviorपैरामीटर के ज़रिए स्नैप की सुविधा दें. SwipeDismissableNavHostअब ऐप्लिकेशन में ट्रांज़िशन के लिए, एंट्री ऐनिमेशन उपलब्ध कराता है.- अब स्क्रीन पहली बार दिखने पर,
PositionIndicatorडिफ़ॉल्ट रूप से दिखता है. SelectableChipऔरSplitSelectableChipकोToggleChipमें बदलाव के तौर पर जोड़ा गया है. सुलभता के लिए, टॉगल किए जा सकने वाले सिमैंटिक के बजाय चुने जा सकने वाले सिमैंटिक उपलब्ध कराने के लिए, इसका इस्तेमालRadioButtonके साथ करेंListHeaderमें अब ऊंचाई को अडजस्ट करने की सुविधा उपलब्ध है. ऐसा तब किया जाता है, जब बड़े फ़ॉन्ट साइज़ को दिखाने के लिए कॉन्टेंट को ज़्यादा ऊंचाई की ज़रूरत होती है.
गड़बड़ियां ठीक की गईं
- हमने एक बग को ठीक किया है. इस बग की वजह से, चुने जा सकने वाले चिप पहले से चुने होने पर, टॉगल करने के लिए दो बार टैप करने की सूचना देते थे. (I7ed88)
वर्शन 1.4.0-alpha08
1 मई, 2024
androidx.wear.compose:compose-*:1.4.0-alpha08 रिलीज़ हो गया है. वर्शन 1.4.0-alpha08 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- हमने नए रोटरी एपीआई में ये बदलाव किए हैं:
Modifier.rotaryका नाम बदलकरModifier.rotaryScrollableकर दिया है;RotaryBehaviorइंटरफ़ेस का नाम बदलकरRotaryScrollableBehaviorकर दिया है और इसके फ़ंक्शनhandleScrollEventका नाम बदलकरperformScrollकर दिया है;RotaryScrollableAdapterका नाम बदलकरRotaryScrollableLayoutInfoProviderकर दिया है औरscrollableStateप्रॉपर्टी हटा दी है. (I0c8a6) - हमने रोटरी एपीआई में कुछ और बदलाव किए हैं:
RotaryScrollableLayoutInfoProviderका नाम बदलकरRotarySnapLayoutInfoProviderकर दिया है, क्योंकि इस प्रोवाइडर की ज़रूरत सिर्फ़ स्नैप के साथ रोटरी के लिए होती है;RotaryScrollableDefaults.snapBehavior snapOffsetमेंsnapOffsetपैरामीटर का टाइप Int से बदलकर Dp कर दिया है. (Iddebe) - हमने
SplitSelectableChipपर मौजूदclickInteractionSourceपैरामीटर का नाम बदलकरcontainerInteractionSourceकर दिया है. (Ia8f84) - हमने
SplitSelectableChipके लिए, क्लिक कॉलबैक पैरामीटर के नाम अपडेट कर दिए हैं. इन्हेंonClickसेonSelectionClickऔरonBodyClickसेonContainerClickमें बदल दिया गया है. (I32237)
गड़बड़ियां ठीक की गईं
- हमने
PositionIndicatorके लिए हॉरिज़ॉन्टल पैडिंग को 2dp (पहले 5dp थी) पर अपडेट किया है, ताकि उस गड़बड़ी को ठीक किया जा सके जिसमेंPositionIndicator(स्क्रोल बार), स्क्रोल किए जा सकने वाले कॉन्टेंट पर ओवरलैप हो जाता है. कृपया ध्यान दें कि पैडिंग में बदलाव होने की वजह से,PositionIndicatorको शामिल करने वाले मौजूदा स्क्रीनशॉट काम नहीं करेंगे. (I57472) - हमने नए रोटरी एपीआई के दस्तावेज़ को बेहतर बनाया है. इसमें कम रिज़ॉल्यूशन और ज़्यादा रिज़ॉल्यूशन वाले रोटरी डिवाइसों के बीच के अंतर के बारे में बताया गया है. (I63abe)
- हमने
SwipeDismissableNavHostमें रेंज से बाहर की वैल्यू के अपवाद को ठीक कर दिया है. यह अपवाद तब ट्रिगर हो सकता है, जब इंटरपोलेट की गई ऐल्फ़ा वैल्यू शून्य से कम हों. (Ib75a1, b/335782510)
वर्शन 1.4.0-alpha07
17 अप्रैल, 2024
androidx.wear.compose:compose-*:1.4.0-alpha07 रिलीज़ हो गया है. वर्शन 1.4.0-alpha07 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- हमने
Modifier.rotaryजोड़ा है. यह एक नया मॉडिफ़ायर है, जो रोटरी इवेंट को स्क्रोल किए जा सकने वाले कंटेनर से कनेक्ट करता है. इससे उपयोगकर्ता, Wear OS डिवाइस पर मौजूद क्राउन या रोटेटिंग बेज़ल की मदद से स्क्रोल कर सकते हैं. इसके अलावा,ScalingLazyColumnऔर Picker अब डिफ़ॉल्ट रूप से रोटरी इनपुट के साथ काम करते हैं. इनमें नए ओवरलोड शामिल हैं. इनमें स्क्रोल या स्नैप का कॉन्फ़िगरेशन तय करने के लिए,rotaryBehaviorपैरामीटर शामिल है. अगरrotaryBehaviorपैरामीटर को स्नैप पर सेट किया गया है, तो हमारा सुझाव है कि टच स्क्रोलिंग के लिए,flingBehaviorपैरामीटर के ज़रिए भी स्नैप की सुविधा उपलब्ध कराएं. (I2ef6f) NestedScrollसोर्सेज़ के लिए, ड्रैग और फ़्लिंग कोUserInputऔरSideEffectसे बदला जा रहा है. ऐसा इसलिए किया जा रहा है, ताकि इन सोर्स की बढ़ी हुई परिभाषा को शामिल किया जा सके. अब इनमें ऐनिमेशन (साइड इफ़ेक्ट) और माउस व्हील और कीबोर्ड (उपयोगकर्ता का इनपुट) शामिल हैं. (I40579)- हमने
SelectableChipऔरSplitSelectableChipको जोड़ा है, ताकि टॉगल कंट्रोल (जैसे,Switch/Checkbox) और चुने जा सकने वाले कंट्रोल (जैसे,RadioButton) के बीच अंतर को ज़्यादा आसानी से समझा जा सके. इससे,ToggleChip/SplitToggleChipके पहले से जोड़े गए ओवरलोड कोselectionControlपैरामीटर से बदल दिया जाता है. (Ia0217) ProgressIndicatorDefaultsमेंIndeterminateStrokeWidthके लिए, विज़िबिलिटी मॉडिफ़ायर को सार्वजनिक के तौर पर अपडेट किया गया है. (I5b5a4)
वर्शन 1.4.0-alpha06
3 अप्रैल, 2024
androidx.wear.compose:compose-*:1.4.0-alpha06 रिलीज़ हो गया है. वर्शन 1.4.0-alpha06 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- हमने रोटरी सपोर्ट का इंटरनल ड्राफ़्ट जोड़ा है. यह रोटरी के व्यवहार को Horologist से AndroidX में माइग्रेट करने के बड़े प्रयास का हिस्सा है. (I617d1)
- हमने हैप्टिक सपोर्ट का इंटरनल ड्राफ़्ट जोड़ा है. यह रोटरी के व्यवहार को Horologist से AndroidX में माइग्रेट करने के लिए, बड़े पैमाने पर किए जा रहे काम का हिस्सा है. (I5568a)
वर्शन 1.4.0-alpha05
20 मार्च, 2024
androidx.wear.compose:compose-*:1.4.0-alpha05 रिलीज़ हो गया है. वर्शन 1.4.0-alpha05 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- हमने
ScalingLazyListStateकीinitialCenterItemIndexऔरinitialCenterItemScrollOffsetप्रॉपर्टी को सार्वजनिक कर दिया है. (I0c616) - हमने
ProgressIndicatorDefaultsसे मिलेFullScreenStrokeWidthको सार्वजनिक कर दिया है. (Ibea23)
गड़बड़ियां ठीक की गईं
- हमने
PositionIndicatorकी परफ़ॉर्मेंस को बेहतर बनाया है. इसके लिए, हमनेScalingLazyColumnसेlayoutInfoको किए जाने वाले कॉल की संख्या कम कर दी है. (Idc83d)
वर्शन 1.4.0-alpha04
6 मार्च, 2024
androidx.wear.compose:compose-*:1.4.0-alpha04 रिलीज़ हो गया है. वर्शन 1.4.0-alpha04 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- हमने
ToggleChipऔरSplitToggleChipके लिए एक नया ओवरलोड जोड़ा है. यहtoggleControlपैरामीटर के बजायselectionControlपैरामीटर लेता है. इसका इस्तेमालRadioButtonकंट्रोल के साथ किया जाना चाहिए, ताकि सुलभता (I1d6d9) के लिए टॉगल किए जा सकने वाले सिमैंटिक के बजाय, चुने जा सकने वाले सिमैंटिक उपलब्ध कराए जा सकें - हमने
ToggleChipऔरSplitToggleChipके लिए, नएselectionControlओवरलोड के पैरामीटर के नामonSelectedसे बदलकरonSelectकर दिए हैं (I1a971)
वर्शन 1.4.0-alpha03
21 फ़रवरी, 2024
androidx.wear.compose:compose-*:1.4.0-alpha03 रिलीज़ हो गया है. वर्शन 1.4.0-alpha03 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
Modifier.inspectableरैपर अब काम नहीं करता है. यह एपीआई, आपके मॉडिफ़ायर को ज़रूरत से ज़्यादा बार अमान्य कर देगा. इसलिए, अब इसका इस्तेमाल न करने का सुझाव दिया जाता है. अगर डेवलपर को टूलिंग के लिए मॉडिफ़ायर प्रॉपर्टी दिखानी हैं, तो उन्हेंModifierNodeElementपरinspectableProperties()तरीके को लागू करने का सुझाव दिया जाता है. (Ib3236)
गड़बड़ियां ठीक की गईं
- हमने
WearPreview*एनोटेशन के दस्तावेज़ से जुड़ी गड़बड़ी को ठीक कर दिया है. (Id526d)
वर्शन 1.4.0-alpha02
7 फ़रवरी, 2024
androidx.wear.compose:compose-*:1.4.0-alpha02 रिलीज़ हो गया है. वर्शन 1.4.0-alpha02 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- हमने स्वाइप करके आइटम दिखाने की सुविधा से जुड़ी एक गड़बड़ी ठीक की है. इस गड़बड़ी की वजह से, किसी आइटम पर की गई कार्रवाई को दूसरे आइटम पर स्वाइप करके इंटरैक्ट किया जा सकता था और रद्द किया जा सकता था. (Ide059)
- हमने
ListHeaderको अपडेट किया है. इससे बड़े फ़ॉन्ट साइज़ के हिसाब से कॉन्टेंट को दिखाने के लिए, ऊंचाई में बदलाव किया जा सकता है. (I7290c, b/251166127)
वर्शन 1.4.0-alpha01
24 जनवरी, 2024
androidx.wear.compose:compose-*:1.4.0-alpha01 रिलीज़ हो गया है. वर्शन 1.4.0-alpha01 में ये बदलाव शामिल हैं.
नई सुविधाएं
- हमने ऐप्लिकेशन में ट्रांज़िशन के लिए,
SwipeDismissableNavHostमें एंट्री ऐनिमेशन जोड़ा है.(cfeb79a) - अब स्क्रीन पहली बार दिखने पर,
PositionIndicatorडिफ़ॉल्ट रूप से दिखता है. यह बदलाव, Wear क्वालिटी से जुड़े दिशा-निर्देशों का पालन करने में मदद करने के लिए किया गया था. माफ़ करें, इसका मतलब है किPositionIndicatorको शामिल करने वाली स्क्रीन पर, स्क्रीनशॉट टेस्ट को अपडेट करना होगा. ऐसा इसलिए, क्योंकिPositionIndicatorपहले नहीं दिखाया जाता था. (419cef7)
एपीआई में हुए बदलाव
- हमने
wear:compose-materialऔरwear:compose-material3लाइब्रेरी में नया रिपल एपीआई जोड़ा है. यह एपीआई, बंद किए जा चुकेrememberRippleकी जगह लेगा. यह कुछ समय के लिएCompositionLocalऔरLocalUseFallbackRippleImplementationभी जोड़ता है, ताकि Material कॉम्पोनेंट कोrememberRipple/RippleThemeएपीआई के इस्तेमाल पर वापस लाया जा सके. इसे अगले स्टेबल वर्शन में हटा दिया जाएगा. साथ ही, इसका इस्तेमाल सिर्फ़ उन मामलों में किया जा सकता है जहां आपको कस्टमRippleThemeदेना है. डेटा माइग्रेट करने के बारे में जानकारी और इस बदलाव के बारे में ज़्यादा जानकारी पाने के लिए, developer.android.com पर जाएं. (af92b21) - हमने
ColorSchemeको अपडेट किया है, ताकि इसे बदला न जा सके. इससे अलग-अलग रंगों को अपडेट करना कम असरदार हो जाता है. हालांकि, रंगों का ज़्यादा इस्तेमाल करना ज़्यादा असरदार हो जाता है. इस बदलाव की वजह यह है कि ज़्यादातर ऐप्लिकेशन में, अलग-अलग रंगों को अपडेट करने की सुविधा मुख्य तौर पर इस्तेमाल नहीं की जाती. अब भी ऐसा किया जा सकता है, लेकिन इससे पहले की तुलना में ज़्यादा बार कंपोज़ होगा. इससे, हम सभी मटीरियल कोड के ज़रिए स्टेट की सदस्यता लेने की संख्या को काफ़ी कम कर देंगे. साथ ही, इससे ज़्यादा स्टैंडर्ड इस्तेमाल के उदाहरणों की शुरुआत और रनटाइम की लागत पर असर पड़ेगा. (f5c48b7) - Wear material और Wear material3 कॉम्पोनेंट, अपने एपीआई में
MutableInteractionSourceको दिखाते हैं. इन्हें अपडेट कर दिया गया है. अब ये ऐसेMutableInteractionSourceको दिखाएंगे जो नल हो सकता है और डिफ़ॉल्ट रूप से नल पर सेट होता है. यहां सिमैंटिक में कोई बदलाव नहीं किया गया है: null पास करने का मतलब है कि आपकोMutableInteractionSourceको ऊपर नहीं ले जाना है. अगर ज़रूरत होगी, तो इसे कॉम्पोनेंट के अंदर बनाया जाएगा. इसे null पर सेट करने से, कुछ कॉम्पोनेंट को कभी भीMutableInteractionSourceअसाइन नहीं किया जाता है. साथ ही, अन्य कॉम्पोनेंट को सिर्फ़ तब इंस्टेंस बनाने की अनुमति मिलती है, जब उन्हें इसकी ज़रूरत होती है. इससे इन कॉम्पोनेंट की परफ़ॉर्मेंस बेहतर होती है. अगर इन कॉम्पोनेंट को पास किए गएMutableInteractionSourceका इस्तेमाल नहीं किया जा रहा है, तो हमारा सुझाव है कि आप इसके बजाय null पास करें. हमारा यह भी सुझाव है कि आप अपने कॉम्पोनेंट में भी इसी तरह के बदलाव करें. (f8fa920) - हमने
rememberExpandableStateको अपडेट किया है, ताकि एक्सपैंड की जा सकने वाली स्थिति को सेव किया जा सके. इससे यह पक्का होता है कि किसी दूसरी स्क्रीन पर जाने पर डेटा सेव हो जाए और वापस उसी स्क्रीन पर आने पर डेटा फिर से दिखने लगे. (5c80095)
गड़बड़ियां ठीक की गईं
- हमने
ReduceMotionसेटिंग को अपडेट किया है, ताकि लाइफ़साइकल के हिसाब से काम करने वाले लिसनर का इस्तेमाल किया जा सके. (7c6b122) - हमने
TouchExplorationStateProviderके लिसनर को अपडेट किया है, ताकि वह लाइफ़साइकल के बारे में जान सके (be28b01) - हमने
CompactButtonके लिए, materialcore लेयर को हटा दिया है, ताकि परफ़ॉर्मेंस को बेहतर बनाया जा सके (25db8e9) - हमने
BasicSwipeToDismissBoxको NaN ऑफ़सेट के लिए ज़्यादा मज़बूत बनाया है, ताकि अपवादों से बचा जा सके (b983739) - हमने
BasicSwipeToDismissBoxको अपडेट किया है, ताकि यह पक्का किया जा सके कि ऐल्फ़ा वैल्यू, 0,1 की रेंज में हों - हमने
ToggleButton,SplitToggleButton,Checkbox,Switch, औरRadioButtonमें मौजूद एक बग को ठीक कर दिया है, ताकि ऐक्सेसिबिलिटी से जुड़ी सूचनाएं दोहराई न जाएं. इससे पहले, सिमैंटिक रोल डुप्लीकेट हो जाते थे (d11eeb7)
वर्शन 1.3
वर्शन 1.3.1
3 अप्रैल, 2024
androidx.wear.compose:compose-*:1.3.1 रिलीज़ हो गया है. वर्शन 1.3.1 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- हमने स्वाइप करके आइटम दिखाने की सुविधा से जुड़ी गड़बड़ी को ठीक कर दिया है. इस गड़बड़ी की वजह से, किसी आइटम पर की गई कार्रवाई को रद्द किया जा सकता था. इसके लिए, किसी दूसरे आइटम पर स्वाइप करना शुरू करना पड़ता था. (Ide059)
वर्शन 1.3.0
24 जनवरी, 2024
androidx.wear.compose:compose-*:1.3.0 रिलीज़ हो गया है. वर्शन 1.3.0 में ये बदलाव शामिल हैं.
1.2.0 के बाद हुए ज़रूरी बदलाव
SwipeToDismissBoxStateक्लास,SwipeToDismissValueइन्यूमरेशन, औरModifier.edgeSwipeToDismissएक्सटेंशन फ़ंक्शन अबandroidx.wear.compose.materialपैकेज के बजाय,androidx.wear.compose.foundationपैकेज का हिस्सा हैं. अपडेट किए गए इस आर्किटेक्चर की मदद से, अन्य डिज़ाइन से जुड़ी बातों पर ध्यान दिए बिना, जेस्चर हैंडलिंग को लागू किया जा सकता है. Material Design के वर्कफ़्लो, जैसे कि कॉन्फ़िगर की गई थीम से रंग लागू करना, अलग से हैंडल किए जाते हैं.SwipeToRevealCardऔरSwipeToRevealChipक्लास की मदद से,recommended swipe-to-reveal guidanceको लागू किया जा सकता है.SwipeToRevealSampleक्लास में, इन कॉम्पोनेंट को इस्तेमाल करने का तरीका बताया गया है.हमने 1.3.0-alpha02 वर्शन में एक बदलाव किया है. इससे
ChipऔरToggleChipऑब्जेक्ट की ऊंचाई बढ़ जाती है, ताकि उपयोगकर्ता के चुने गए फ़ॉन्ट के साइज़ को बेहतर तरीके से दिखाया जा सके. इस वजह से, कुछ क्लिप कट सकती हैं. इस समस्या को ठीक करने के लिए,MaterialThemeके लिएlargeशेप में अब बड़े कॉर्नर रेडियस (24 डीपी के बजाय 26 डीपी) का इस्तेमाल किया जाता है.ChipऔरToggleChipऑब्जेक्ट, कॉर्नर के इस नए रेडियस का इस्तेमाल करते हैं, ताकि Chip औरToggleChipके कोनों पर मौजूद कॉन्टेंट को काटा न जाए.- ज़्यादातर
ChipsऔरToggleChipsमें कोई बदलाव नहीं किया गया है, क्योंकि इनकी डिफ़ॉल्ट ऊंचाई 52 डीपी है. हालांकि,ChipऔरToggleChipऑब्जेक्ट में प्राइमरी या सेकंडरी लेबल के टेक्स्ट की एक से ज़्यादा लाइनें होने या उनकी ऊंचाई में बदलाव किए जाने की वजह से, स्क्रीनशॉट टेस्ट काम नहीं कर सकते.
- ज़्यादातर
अन्य बदलाव
वर्शन 1.3.0 में किए गए बदलावों के बारे में ज़्यादा जानने के लिए, beta01 के रिलीज़ नोट देखें.
लागू करने के लिए सुझाव
- अगर आपका ऐप्लिकेशन, उपयोगकर्ताओं को स्क्रीन के कॉन्टेंट को पैन करने की सुविधा देता है, जैसे कि मैप पर आधारित ऐप्लिकेशन में, तो
SwipeDismissableNavHostकंपोज़ेबल मेंuserSwipeEnabledकोfalseपर सेट करके, स्वाइप करने की सुविधा बंद करें. साथ ही, एक ऐसा बटन शामिल करें जिससे उपयोगकर्ता पिछली स्क्रीन पर जा सकें. - स्क्रोल करने वाली सूची में, फ़ेड-इन और जगह बदलने वाले ऐनिमेशन के दौरान, जगह की जानकारी देने वाले इंडिकेटर के लिए ऐनिमेशन बंद करने के लिए,
SnapSpecऑब्जेक्ट का इस्तेमाल करें. - मीडिया ऐप्लिकेशन के कॉन्टेंट को लोड होने में समय लगता है. इसलिए, प्लेबैक के दौरान एक खाली
Placeholderकंपोज़ेबल दिखाएं. - मांग पर बड़े किए जा सकने वाले आइटम का कलेक्शन बनाने के लिए, एक्सपेरिमेंट के तौर पर उपलब्ध
ExpandableStateMappingक्लास का इस्तेमाल करें.
वर्शन 1.3.0-rc01
10 जनवरी, 2024
androidx.wear.compose:compose-*:1.3.0-rc01 रिलीज़ हो गया है. वर्शन 1.3.0-rc01 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
-
हमने
MaterialThemeबड़े साइज़ के शेप को अपडेट किया है, ताकि 26dp के राउंडेड कॉर्नर रेडियस का इस्तेमाल किया जा सके. अब इसका इस्तेमाल चिप औरToggleChipके लिए किया जाएगा. यह बदलाव इसलिए ज़रूरी है, ताकि बड़े फ़ॉन्ट साइज़ के हिसाब से कॉन्टेंट को दिखाने के लिए, ऊंचाई में बदलाव किया जा सके. ऐसा न करने पर, मौजूदा स्टेडियम के आकार में कुछ टेक्स्ट कॉन्टेंट कट जाता है.पहली इमेज: कोनों पर टेक्स्ट कटा हुआ है. दूसरी इमेज: टेक्स्ट काटा नहीं गया है. इस बदलाव की वजह से, स्क्रीनशॉट टेस्ट में गड़बड़ी हो सकती है. (I2e6ae)
वर्शन 1.3.0-beta02
13 दिसंबर, 2023
androidx.wear.compose:compose-*:1.3.0-beta02 रिलीज़ हो गया है. वर्शन 1.3.0-beta02 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- हमने
BasicSwipeToDismissBoxमें स्वाइप करने की सुविधा को पहले जैसा कर दिया है. पिछली रिलीज़ में, इसमें बदलाव किया गया था. इससे, स्क्रीन को छूते समय स्लाइड ट्रांज़िशन का हिस्सा दिखता था. (Id8e76)
वर्शन 1.3.0-beta01
15 नवंबर, 2023
androidx.wear.compose:compose-*:1.3.0-beta01 रिलीज़ हो गया है. वर्शन 1.3.0-beta01 में ये बदलाव शामिल हैं.
Compose for Wear OS के 1.3-beta01 वर्शन से पता चलता है कि लाइब्रेरी का यह वर्शन, सभी सुविधाओं के साथ उपलब्ध है. साथ ही, एपीआई लॉक है. हालांकि, जहां एक्सपेरिमेंट के तौर पर मार्क किया गया है वहां एपीआई लॉक नहीं है. Wear Compose 1.3 में ये नई सुविधाएं शामिल हैं:
SwipeToDismissBoxState,SwipeToDismissValue, औरModifier.edgeSwipeToDismissकोandroidx.wear.compose.materialसेandroidx.wear.compose.foundationपर माइग्रेट कर दिया गया है. साथ ही,BasicSwipeToDismissBoxमें स्वाइप करके खारिज करने की सुविधा को भी माइग्रेट कर दिया गया है. इससे स्वाइप करके खारिज करने की सुविधा के लिए, जेस्चर हैंडलिंग को Material Design से अलग इस्तेमाल किया जा सकता है. उदाहरण के लिए,androidx.wear.compose.navigationमेंSwipeDismissableNavHostसे.SwipeToDismissBoxको अब भी Material Design के साथ इस्तेमाल करने का सुझाव दिया जाता है, क्योंकि यहMaterialThemeसे रंग लेता है. इसके बाद, बाकी कामBasicSwipeToDismissBoxको सौंप देता है.androidx.wear.compose.materialSwipeDismissableNavHostमें अब नयाuserSwipeEnabledपैरामीटर काम करता है. इससे उन स्क्रीन के लिए स्वाइप करने की सुविधा बंद की जा सकती है जहां इसकी ज़रूरत नहीं है.BasicSwipeToDismissBoxनेHierarchicalFocusCoordinatorका इस्तेमाल करके, फ़ोकस को बेहतर तरीके से मैनेज करने की सुविधा दी है.SwipeToRevealमें Material के नएSwipeToRevealCardऔरSwipeToRevealChipकंपोज़ेबल हैं. येCardऔरChipके लिए, यूज़र एक्सपीरियंस (यूएक्स) से जुड़े सुझावों का पालन करते हैं. इसमें सेकंडरी ऐक्शन को पहले जैसा करने की सुविधा भी है.DefaultTextStyleअब फ़ॉन्ट पैडिंग की सुविधा बंद कर देता है, ताकि Android प्लैटफ़ॉर्म पर एक जैसा अनुभव मिल सके.ChipऔरToggleChipअब अपनी ऊंचाई को अडजस्ट करते हैं, ताकि सुलभता के लिए बड़े फ़ॉन्ट की वजह से बढ़े हुए कॉन्टेंट को शामिल किया जा सकेPositionIndicatorमें अब फ़ेड-इन, फ़ेड-आउट, और पोज़िशन बदलने वाले ऐनिमेशन के लिए अलग-अलग ऐनिमेशन स्पेसिफ़िकेशन हैं. परफ़ॉर्मेंस को बेहतर बनाने के लिए, हमारा सुझाव है कि स्क्रोल की जा सकने वाली सूचियों के साथ इस्तेमाल करते समय, फ़ेड-इन और पोज़िशन में बदलाव करने की सुविधा बंद कर दें.ExpandableStateMapping,ExpandableStatesजनरेट करने का एक नया तरीका है. इसका इस्तेमाल तब किया जाता है, जबExpandableStatesको मांग के हिसाब से जनरेट करना हो और ज़रूरी नहीं है कि वे@Composableके दायरे में हों.- अगर कॉन्टेंट अब तैयार नहीं है, तो
Placeholderको रीसेट किया जा सकता है. इसके अलावा, मोशन कम करने की सेटिंग अबPlaceholderपर दिखने वाले शिमरिंग इफ़ेक्ट और वाइप-ऑफ़ मोशन पर भी लागू होती है.
मौजूदा समस्याएं
- स्क्रीन पहली बार दिखने पर,
PositionIndicatorशुरू में नहीं दिखता है. हम 1.4 के शुरुआती ऐल्फ़ा वर्शन में बदलाव करने वाले हैं, ताकि इसे शुरुआत में दिखाया जा सके. हालांकि, इसमें कोई ऐनिमेशन नहीं होगा.
एपीआई में हुए बदलाव
- हमने फ़ाउंडेशन लेवल
SwipeToDismissBoxका नाम बदलकरBasicSwipeToDismissBoxकर दिया है. इससे, फ़ाउंडेशन लेवल कॉम्पोनेंट और मटीरियल लेवलSwipeToDismissBoxके बीच का अंतर साफ़ तौर पर पता चलता है. बाद वाला,MaterialThemeसे रंग लेता है, ताकि उनका इस्तेमाल स्क्रिम में किया जा सके. साथ ही, बाकी कामBasicSwipeToDismissBoxको सौंप देता है. (Ibecfc) - हमने
rememberExpandableStateMappingको एक्सपेरिमेंटल के तौर पर मार्क किया है औरexpandableItemकी परफ़ॉर्मेंस को बेहतर बनाया है. (I5f6bc) - हमने Material
SwipeToRevealCard और Chip API मेंSwipeToRevealActionक्लास को स्लॉट-आधारित एपीआई से बदल दिया है. इसमेंSwipeToRevealPrimaryAction,SwipeToRevealSecondaryAction, औरSwipeToRevealUndoActionकंपोज़ेबल का इस्तेमाल किया गया है. नए एपीआई को इस्तेमाल करने के तरीके के उदाहरणों के लिए, कृपया सैंपल कोड देखें. (Ia8943) - हमने
PositionIndicatorऐनिमेशन फ़्लैग कोAnimationSpecपैरामीटर से बदल दिया है.snapकोAnimationSpecके तौर पर पास करके, अलग-अलग ऐनिमेशन बंद किए जा सकते हैं. (I6c523)
गड़बड़ियां ठीक की गईं
- हमने एक बग को ठीक कर दिया है. यह बग, टेक्स्ट के साइज़ को सीमित करने पर, घुमाए गए टेक्स्ट के सीमित होने की वजह से ट्रिगर होता था (I50efe)
- हमने
curvedComposable(I970eb) से जुड़े NaN क्रैश की समस्या को ठीक कर दिया है - हमने
PositionIndicatorपर, जगह बदलने के हाइलाइट ऐनिमेशन को हटाने की सुविधा को वापस ला दिया है. (Ieb424) - हमने मटीरियल चिप के लिए, मटीरियल-कोर लेयर को हटा दिया है, ताकि इसकी परफ़ॉर्मेंस को बेहतर बनाया जा सके. (If2dcb)
वर्शन 1.3.0-alpha08
18 अक्टूबर, 2023
androidx.wear.compose:compose-*:1.3.0-alpha08 रिलीज़ हो गया है. वर्शन 1.3.0-alpha08 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- हमने
PositionIndicatorओवरलोड में अलग-अलग फ़्लैग जोड़े हैं, ताकि अलग-अलग ऐनिमेशन को कंट्रोल किया जा सके:showFadeInAnimation,showFadeOutAnimation, औरshowPositionAnimation. एपीआई के पिछले वर्शन को बंद कर दिया गया है. अब कॉल, नए वर्शन पर फ़ॉरवर्ड किए जाते हैं. परफ़ॉर्मेंस को बेहतर बनाने और यूज़र एक्सपीरियंस को एक जैसा बनाए रखने के लिए, हमारा सुझाव है कि स्क्रोल की जा सकने वाली सूची के साथPositionIndicatorका इस्तेमाल करते समय,showFadeInAnimationऔरshowPositionAnimationफ़्लैग बंद कर दें. अगरPositionIndicatorका इस्तेमाल स्टैंडअलोन इंडिकेटर के तौर पर किया जाता है, जैसे कि आवाज़ में बदलाव के लिए, तो हमारा सुझाव है कि तीनों ऐनिमेशन चालू हों. (I44294) - हमने स्वाइप करके खारिज करने की सुविधा को
wear.compose.foundationपर माइग्रेट कर दिया है. इसलिए, हमने MaterialSwipeToDismissBoxState,SwipeToDismissValue, औरedgeSwipeToDismissको बंद कर दिया है. कृपया इन्हेंwear.compose.foundationके बराबर वाले टैग से बदलें. (Iee8c9)
गड़बड़ियां ठीक की गईं
- हमने Wear Compose Foundation, Material, और Navigation लाइब्रेरी के लिए, बेसलाइन प्रोफ़ाइलें अपडेट की हैं. (Idb060)
- हमने
PositionIndicatorके व्यवहार में हुए बदलाव को पहले जैसा कर दिया है. यह बदलाव, पिछली सीएल में किया गया था. इस बदलाव के तहत, स्क्रीन के पहली बार दिखने परPositionIndicatorऐनिमेट होता था. हम 1.4 के शुरुआती ऐल्फ़ा वर्शन में भी ऐसा ही बदलाव करेंगे, ताकिPositionIndicatorको शुरुआत में दिखाया जा सके. हालांकि, इसमें कोई ऐनिमेशन नहीं होगा. (I41843) - हमने
PositionIndicatorमें परफ़ॉर्मेंस से जुड़ी कुछ समस्याओं को ठीक किया है. (I1c654, b/302399827) - हमने टच एक्सप्लोरेशन स्टेट प्रोवाइडर के डिफ़ॉल्ट तौर पर लागू होने की परफ़ॉर्मेंस को ऑप्टिमाइज़ किया है, ताकि यह डिराइव की गई स्थिति के बजाय
State<Boolean>पर निर्भर रहे. (Ieec4d) - हमने Android 13 और इसके बाद के वर्शन के लिए,
systemGestureExclusionरेक्टैंगल सेट किए हैं. (Ib1f4b)
वर्शन 1.3.0-alpha07
4 अक्टूबर, 2023
androidx.wear.compose:compose-*:1.3.0-alpha07 रिलीज़ हो गया है. वर्शन 1.3.0-alpha07 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- हमने
PositionIndicatorमें अलग-अलग फ़्लैग जोड़े हैं, ताकि अलग-अलग ऐनिमेशन को कंट्रोल किया जा सके:showFadeInAnimation,showFadeOutAnimation, औरshowPositionAnimation. एपीआई के पिछले वर्शन को बंद कर दिया गया है. अब कॉल, नए वर्शन पर फ़ॉरवर्ड किए जाते हैं. परफ़ॉर्मेंस को बेहतर बनाने और यूज़र एक्सपीरियंस को एक जैसा बनाए रखने के लिए, हमारा सुझाव है कि स्क्रोल की जा सकने वाली सूची के साथPositionIndicatorका इस्तेमाल करते समय,showFadeInAnimationऔरshowPositionAnimationफ़्लैग बंद कर दें. अगरPositionIndicatorका इस्तेमाल स्टैंडअलोन इंडिकेटर के तौर पर किया जाता है, जैसे कि आवाज़ में बदलाव के लिए, तो हमारा सुझाव है कि तीनों ऐनिमेशन चालू हों. (Ia2d63)
गड़बड़ियां ठीक की गईं
- हमने स्वाइप करके मोशन दिखाने की सुविधा को बेहतर बनाया है. इसके लिए, हमने प्राइमरी ऐक्शन टेक्स्ट में फ़ेड ऐनिमेशन जोड़ा है. साथ ही, पूरी तरह से स्वाइप करने पर, सेकंडरी ऐक्शन को फ़ेड किया है या आइकॉन के स्केल को बदला है. (Ib7223)
- हमारा सुझाव है कि स्वाइप करके दिखाने की सुविधा से जुड़ी कार्रवाइयों को ऐक्सेस किया जा सके. हमने स्वाइप करके दिखाने की सुविधा के सैंपल में, ऐक्सेसिबिलिटी से जुड़ी कस्टम कार्रवाइयां जोड़ी हैं. (I42224)
- हमने
SwipeToDismissBoxकी परफ़ॉर्मेंस को बेहतर बनाया है. इसमें रीफ़ैक्टरिंग भी शामिल है, ताकि यह पक्का किया जा सके कि शुरुआती लॉजिक से रीकंपोज़िशन ट्रिगर न हो.SwipeToDismissBoxको अब फ़ुल स्क्रीन के साइज़ में दिखाया गया है. (Ie0aa2) - हमने उस गड़बड़ी को ठीक कर दिया है जिसकी वजह से
PositionIndicatorगलत तरीके से गायब हो जाता था. (I2091a) - रीकंपोज़िशन को ऑप्टिमाइज़ करके,
PositionIndicatorकी परफ़ॉर्मेंस को बेहतर बनाया गया है. ऐनिमेशन को कंट्रोल करने के लिए, बाद में नए फ़्लैग (fadeIn,fadeOut, औरpositionChange) जोड़े गए हैं. एपीआई में हुए बदलाव देखें (Ifac7d) - हमने
PositionIndicator(Idf875) के लिए, माइक्रोबेंचमार्क टेस्ट जोड़े हैं
वर्शन 1.3.0-alpha06
20 सितंबर, 2023
androidx.wear.compose:compose-*:1.3.0-alpha06 रिलीज़ हो गया है. वर्शन 1.3.0-alpha06 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- हमने
SwipeToRevealके साथModifier.edgeSwipeToDismissके काम करने की सुविधा जोड़ी है. (I95774, b/293444286) - हमने मटीरियल
SwipeToRevealChipऔरSwipeToRevealCardके सैंपल जोड़े हैं. (Ieb974) - हमने Wear Compose Foundation और Material लाइब्रेरी के लिए, बेसलाइन प्रोफ़ाइलें अपडेट की हैं. (I1dd1f)
वर्शन 1.3.0-alpha05
6 सितंबर, 2023
androidx.wear.compose:compose-*:1.3.0-alpha05 रिलीज़ हो गया है. वर्शन 1.3.0-alpha05 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- हमने 'स्वाइप करके दिखाएं' सुविधा में हैंडलिंग की सुविधा जोड़ी है, ताकि एक बार में सिर्फ़ एक आइटम को स्वाइप किया जा सके. (I3cd7a)
ScalingLazyColumnDefaultsके दस्तावेज़ को बेहतर बनाया गया है, ताकि यह इसके असल व्यवहार से ज़्यादा मेल खाए. (I886d3)
वर्शन 1.3.0-alpha04
23 अगस्त, 2023
androidx.wear.compose:compose-*:1.3.0-alpha04 रिलीज़ हो गया है. वर्शन 1.3.0-alpha04 में ये बदलाव शामिल हैं.
नई सुविधाएं
- हमने
SwipeToRevealकी दूसरी कार्रवाई के लिए, पहले जैसा करने की सुविधा जोड़ी है. (I7a22d)
एपीआई में हुए बदलाव
- Wear Material3 लाइब्रेरी में
HorizontalPageIndicatorजोड़ें. (Ifee99) androidx.wear.tooling.previewलाइब्रेरी का इस्तेमाल करने के लिए, Wear Compose की झलक दिखाने वाले टूल को अपडेट किया गया है. (Ib036e)
गड़बड़ियां ठीक की गईं
- गोल बटन में मौजूद गड़बड़ी को ठीक किया गया है. इसमें मॉडिफ़ायर को सही तरीके से चेन नहीं किया गया था. (I5e162)
वर्शन 1.3.0-alpha03
9 अगस्त, 2023
androidx.wear.compose:compose-*:1.3.0-alpha03 रिलीज़ हो गया है. वर्शन 1.3.0-alpha03 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- हमने कार्ड और चिप के साथ
SwipeToRevealको लागू करने के लिए, Material में दो नए कंपोज़ेबल जोड़े हैं. ये कंपोज़ेबल, कॉम्पोनेंट के लिए सुझाए गए UX दिशा-निर्देशों का पालन करते हैं. साथ ही, इससे डेवलपर के लिए Wear Material में मौजूद कॉम्पोनेंट के साथSwipeToRevealको लागू करना आसान हो जाता है. (I7ec65) - हमने एपीआई की शर्तों के तौर पर
FloatRangeएनोटेशन चालू कर दिए हैं. इनके बारे में पहले टिप्पणियों में बताया गया था. (Icb401)
गड़बड़ियां ठीक की गईं
- हमने
ScalingLazyColumnके शुरुआती स्क्रोलिंग लॉजिक कोonGloballyPositioned()में शामिल कर दिया है. (Ic90f1) - हम स्ट्रोक के असाइनमेंट को ऑप्टिमाइज़ करने के लिए, अब
PositionIndicator,ProgressIndicator, औरSelectionControlsमेंdrawWithCacheका इस्तेमाल कर रहे हैं. (I5f225, b/288234617) - हमने बंद की गई स्थितियों में, चेकबॉक्स पर सही का निशान दिखने की समस्या को ठीक कर दिया है. (Ib25bf)
- हमने
Placeholderको अपडेट कर दिया है, ताकि कॉन्टेंट के तैयार न होने पर, उसे रीसेट करके प्लेसहोल्डर दिखाया जा सके. (Ibd820) - हमने
Placeholderटेस्ट (Idb560) से जुड़ी कुछ समस्याओं को ठीक किया है
वर्शन 1.3.0-alpha02
26 जुलाई, 2023
androidx.wear.compose:compose-*:1.3.0-alpha02 रिलीज़ हो गया है. वर्शन 1.3.0-alpha02 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- हमने
ExpandableStateMappingउपलब्ध कराया है. यहExpandableStatesजनरेट करने का नया तरीका है. इसका इस्तेमाल उन मामलों में किया जाता है जिनमेंExpandableStatesको मांग पर बनाया जाना होता है. यह ज़रूरी नहीं है कि इन्हें@Composableस्कोप (Iff9e0) के अंदर बनाया जाए SwipeToDismissBoxकोandroidx.wear.compose.materialसेandroidx.wear.compose.foundationपैकेज में माइग्रेट कर दिया गया है. (I275fb)- संगतता को दबाने की सुविधा के बारे में जानकारी देने के लिए, एपीआई फ़ाइलों को अपडेट किया गया. (I8e87a, b/287516207)
- हमने
Chip,CompactChip, औरToggleChipके लिए ऊंचाई के कॉन्स्टेंट को सार्वजनिक कर दिया है (Idbfde) - हमने
ChipऔरCompactChipके लिए हॉरिज़ॉन्टल और वर्टिकल पैडिंग को सार्वजनिक कर दिया है. (Ieeaf7) SwipeDismissableNavHostपैरामीटर की मदद से,SwipeDismissableNavHostमें स्वाइप करने की सुविधा को बंद करने की सुविधा जोड़ी गई.userSwipeEnabled(Id2a0b, b/230865655)- हमने Wear Compose Navigation लाइब्रेरी को अपडेट किया है, ताकि Wear Compose Foundation से मिले नए
SwipeToDismissBoxका इस्तेमाल किया जा सके. (I4ff8e)
गड़बड़ियां ठीक की गईं
- हमने z-ऑर्डर से जुड़ी एक गड़बड़ी को ठीक किया है. इस गड़बड़ी में, बटन मौजूद होने पर, बटन के व्यवहार पर क्लिक करने के बाद
expandedItemसही कॉन्टेंट नहीं दिखाता था. (I1899d, b/289991514) HierarchicalFocusCoordinator(I45362, b/277852486) का इस्तेमाल करके,SwipeToDismissBox(और इसलिएSwipeDismissableNavHost) के फ़ोकस को बेहतर बनाया गया- हमने
SwipeableV2में जेस्चर हैंडलिंग से जुड़ी समस्या को ठीक कर दिया है . (I89737) - हमने 1.2 रिलीज़ के लिए, बेसलाइन प्रोफ़ाइलें तय कर ली हैं. (Id5740)
SwipeToDismissBoxको Foundation में माइग्रेट करने के बाद, MaterialSwipeToDismissBoxको लागू करने की सुविधा अब Foundation को मिलती है. साथ ही, यह अपनी थीम से डिफ़ॉल्ट रंग की वैल्यू उपलब्ध कराता है.(If8451)- हमने
ListHeaderमें हेडिंग सिमैंटिक जोड़े हैं. (Ic5420) - अब
ChipऔरToggleChipकी ऊंचाई में बदलाव किया जा सकेगा. ऐसा तब होगा, जब सुलभता के लिए बड़े फ़ॉन्ट इस्तेमाल किए गए हों और इस वजह से कॉन्टेंट का साइज़ बढ़ गया हो. (Iaf302) - सुलभता के लिए,
SplitToggleChipके टैप किए जा सकने वाले हिस्से की सिमैंटिक भूमिका में मौजूद गड़बड़ी को ठीक किया गया है. (Ieed3a) - 'मोशन कम करें' सेटिंग चालू करने पर, अब प्लेसहोल्डर पर दिखने वाला शिमरिंग इफ़ेक्ट और वाइप-ऑफ़ मोशन बंद हो जाता है. (I91046)
StepperऔरInlineSliderमें अब देर तक दबाकर रखने पर बार-बार क्लिक करने की सुविधा काम करती है. इससे, + या - बटन को दबाकरStepperऔरInlineSliderकी वैल्यू को तुरंत बढ़ाया/घटाया जा सकता है. (I27359)
वर्शन 1.3.0-alpha01
21 जून, 2023
androidx.wear.compose:compose-*:1.3.0-alpha01 रिलीज़ हो गया है. वर्शन 1.3.0-alpha01 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
1.2.0-alpha07और1.2.0-alpha10में बताए गए बदलाव के मुताबिक, हम अबDefaultTextStyleको बदल रहे हैं, ताकि फ़ॉन्ट पैडिंग को बंद किया जा सके. इससे, Android प्लैटफ़ॉर्म पर एक जैसा अनुभव मिलेगा. इससे बड़े फ़ॉन्ट साइज़ वाले टेक्स्ट के कुछ मामलों में, टेक्स्ट के कटने की समस्या ठीक हो जाएगी. इससे स्क्रीन लेआउट पर भी असर पड़ सकता है. इसलिए, स्क्रीनशॉट टेस्ट को अपडेट करना होगा. उदाहरण के लिए, हमें यहां टेक्स्ट क्लिप किया हुआ दिखता है (Ic6a86)
- फ़ॉन्ट पैडिंग बंद होने पर, यह मौजूद नहीं होता:
- हमने
wear.compose.foundationकोwear.compose.material(I72004, b/285404743) के एपीआई पर निर्भरता के तौर पर अपडेट किया है - हमने
SwipeToDismissBoxमें मौजूद एक गड़बड़ी को ठीक कर दिया है. बैकग्राउंड और कॉन्टेंट की कुंजियों को अब remember ब्लॉक में पास किया जाता है, ताकि कॉन्टेंट या बैकग्राउंड में बदलाव होने पर नए मॉडिफ़ायर बनाए जा सकें. (Ib876c, b/280392104) - हमने
TimeTextको अपडेट किया है, ताकि 12 या 24 घंटे का समय दिखाने के लिए फ़ॉर्मैट चुनते समय, स्थानीय भाषा का इस्तेमाल किया जा सके. (If4a3d) - हमने
SwipeToDismissBoxcontentScrimColorके डिफ़ॉल्ट पैरामीटर में मौजूद गड़बड़ी को ठीक कर दिया है. (I2d70f) - हमने
SwipeToRevealमें मोशन हैंडलिंग को बेहतर बनाया है. (I28fb7)
मौजूदा समस्याएं
- उपयोगकर्ता के कॉन्फ़िगर किए गए फ़ॉन्ट साइज़ के साथ काम करना, ऐक्सेसिबिलिटी से जुड़ी ज़रूरी शर्त है. हम जानते हैं कि बड़े फ़ॉन्ट साइज़ के साथ दिखाने पर, एक से ज़्यादा लाइन वाले चिप में टेक्स्ट कट सकता है. इसलिए, हम चिप को 1.3 के शुरुआती ऐल्फ़ा वर्शन में अपडेट करेंगे, ताकि ऐसे मामलों में ऊंचाई को अडजस्ट किया जा सके.
वर्शन 1.2
वर्शन 1.2.1
18 अक्टूबर, 2023
androidx.wear.compose:compose-*:1.2.1 रिलीज़ हो गया है. वर्शन 1.2.1 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- उस गड़बड़ी को ठीक किया गया जिसकी वजह से
PositionIndicatorगलत तरीके से गायब हो जाता था. (7a167f)
वर्शन 1.2.0
9 अगस्त, 2023
androidx.wear.compose:compose-*:1.2.0 रिलीज़ हो गया है. वर्शन 1.2.0 में ये बदलाव शामिल हैं.
1.1.0 के बाद हुए अहम बदलाव
- Compose for Wear OS 1.2.0 का स्टेबल वर्शन रिलीज़ किया गया (ज़्यादा जानें)
- Wear Compose 1.2 में हुए मुख्य बदलावों की सूची देखने के लिए, (Compose for Wear OS 1.2 Beta01) के रिलीज़ नोट देखें
वर्शन 1.2.0-rc01
26 जुलाई, 2023
androidx.wear.compose:compose-*:1.2.0-rc01 रिलीज़ हो गया है. वर्शन 1.2.0-rc01 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- हमने 1.2 रिलीज़ (Id5740) के लिए बेसलाइन प्रोफ़ाइलें तय कर ली हैं
वर्शन 1.2.0-beta02
7 जून, 2023
androidx.wear.compose:compose-*:1.2.0-beta02 रिलीज़ हो गया है. वर्शन 1.2.0-beta02 में ये बदलाव शामिल हैं.
नई सुविधाएं
- हमने एक्सपेरिमेंट के तौर पर उपलब्ध नया
LocalReduceMotionCompositionLocalवैरिएबल जोड़ा है. इससेScalingLazyColumnपर स्केलिंग और फ़ेडिंग की सुविधा बंद हो जाती है. (I58024)
गड़बड़ियां ठीक की गईं
- हमने Wear Compose Foundation और Material Libraries के लिए, बेसलाइन प्रोफ़ाइल अपडेट की हैं(I4725d)
- हमने
SwipeToDismissBoxcontentScrimColorपैरामीटर (I2d70f) की डिफ़ॉल्ट वैल्यू में मौजूद गड़बड़ी को ठीक कर दिया है - हमने
DefaultTextStyleसेटिंग (I737ed) के लिए इस्तेमाल की गईDefaultTextStyleडिफ़ॉल्ट वैल्यू को ठीक कर दिया हैIncludeFontPadding
वर्शन 1.2.0-beta01
24 मई, 2023
androidx.wear.compose:compose-*:1.2.0-beta01 रिलीज़ हो गया है. वर्शन 1.2.0-beta01 में ये बदलाव शामिल हैं.
Wear OS 1.2 के लिए Compose में क्या-क्या है
Compose for Wear OS के 1.2-beta01 वर्शन से पता चलता है कि इस लाइब्रेरी के सभी फ़ीचर उपलब्ध हैं और एपीआई लॉक है. हालांकि, जहां एक्सपेरिमेंट के तौर पर मार्क किया गया है वहां एपीआई लॉक नहीं है. Wear Compose 1.2 में ये नई सुविधाएं शामिल हैं:
expandableItemऔरexpandableItems,Foundationके दो नए कॉम्पोनेंट हैं. येScalingLazyColumnमें मौजूद आइटम को बड़ा करने की सुविधा देते हैं. एक ही आइटम को बड़ा करके दिखाने के लिएexpandableItemका इस्तेमाल करें. जैसे, टेक्स्ट में लाइनों की संख्या. एक्सपैंड किए जा सकने वाले आइटम के ग्रुप के लिएexpandableItemsका इस्तेमाल करें. साथ ही, ऐसे बटन को आसानी से बनाने के लिएexpandableButtonका इस्तेमाल करें जो कॉन्टेंट के एक्सपैंड होने के बाद छोटा हो जाता है.HierarchicalFocusCoordinator- यह एक्सपेरिमेंटल कंपोज़ेबल, कंपोज़िशन के सब-ट्री को फ़ोकस चालू या फ़ोकस बंद के तौर पर मार्क करने की सुविधा देता है.Picker- एपीआई में अबuserScrollEnabledशामिल है. इससे यह कंट्रोल किया जा सकता है कि उपयोगकर्ता के स्क्रोल करने पर, पिकर चालू है या नहीं.PickerGroup- एक नया कंपोज़ेबल, जो एक साथ कई पिकर को हैंडल करने के लिए बनाया गया है. यह कुकी,HierarchicalFocusCoordinatorAPI का इस्तेमाल करके, पिकर के बीच फ़ोकस को मैनेज करती है. साथ ही, पिकर आइटम को अपने-आप बीच में लाने की सुविधा चालू करती है.Placeholder- हमने शिमर और ‘वाइप ऑफ़’ ऐनिमेशन में अपडेट किए हैं. कॉन्टेंट तैयार होने पर, अब वाइप-ऑफ़ इफ़ेक्ट तुरंत लागू हो जाता है.ScalingLazyColumn- हमनेScalingLazyColumnऔर उससे जुड़ी क्लास कोandroidx.wear.compose.material.ScalingLazyColumnसेandroidx.wear.compose.foundation.lazy.ScalingLazyColumnपर माइग्रेट कर दिया है.Foundation.Lazyवर्शन का इस्तेमाल करने के लिए, कृपया अपडेट करें.SwipeToReveal- हमने स्वाइप करके दिखाने की सुविधा को एक्सपेरिमेंट के तौर पर जोड़ा है. इससे, दूसरी कार्रवाइयों को ऐक्सेस किया जा सकता है. यह सुविधा, ‘दबाकर रखें’ पैटर्न के साथ काम करती है.Stepper- अब इसमें एक अतिरिक्तenableRangeSemanticsपैरामीटर के साथ ओवरलोड है, ताकि डिफ़ॉल्ट रेंज सिमैंटिक्स को बंद किया जा सके.Previews- हमने Wear की स्क्रीन पर कंपोज़ेबल की झलक देखने के लिए, ये कस्टम एनोटेशन जोड़े हैं:WearPreviewSmallRoundछोटे, गोल डिवाइस पर कंपोज़ेबल की झलक दिखाता है;WearPreviewLargeRoundबड़े, गोल डिवाइस पर कंपोज़ेबल की झलक दिखाता है;WearPreviewSquareचौकोर डिवाइस पर कंपोज़ेबल की झलक दिखाता है. इसके अलावा, फ़ॉलो करने और एक साथ कई झलक दिखाने वाले एनोटेशन:WearPreviewFontScalesकी मदद से, अलग-अलग फ़ॉन्ट साइज़ वाले Wear डिवाइस पर कंपोज़ेबल की झलक देखी जा सकती है. वहीं,WearPreviewDevicesकी मदद से, अलग-अलग Wear डिवाइसों पर कंपोज़ेबल की झलक देखी जा सकती है.- हमने Wear Compose में
DefaultTextStyleजोड़ा है. इससेPlatformTextStyle.includeFontPaddingप्रॉपर्टी की वैल्यू डिफ़ॉल्ट रूप से true पर सेट हो जाती है. यह मौजूदा सेटिंग है. इससे हमें फ़ॉन्ट पैडिंग को डिफ़ॉल्ट रूप से बंद करने की सुविधा को, Compose लाइब्रेरी के साथ सिंक करने में मदद मिलेगी. यह सुविधा, 1.3 ऐल्फ़ा वर्शन में उपलब्ध होगी. ज़्यादा जानकारी के लिए, 1.2.0-alpha10 देखें.
नई सुविधाएं
- हमने reduce_motion सेटिंग चालू होने पर, डिसैबल की गई स्केलिंग और फ़ेडिंग ऐनिमेशन के लिए एक्सपेरिमेंटल सपोर्ट जोड़ी है. (I58024)
गड़बड़ियां ठीक की गईं
CurvedSize.kt(Iab75c) मेंangularWidthDpके लिए बेहतर दस्तावेज़SwipeDismissableNavHostअब खाली बैकस्टैक की संभावित वजहों के साथ चेतावनी लॉग करता है. ऐसा इसलिए किया जाता है, ताकिIllegalArgumentExceptionकी वजह से होने वाली अनचाही क्रैश को रोका जा सके. यह तब थ्रो किया गया था, जब बैकस्टैक खाली था. (I04a81, b/277700155)
वर्शन 1.2.0-alpha10
10 मई, 2023
androidx.wear.compose:compose-*:1.2.0-alpha10 रिलीज़ हो गया है. वर्शन 1.2.0-alpha10 में ये बदलाव शामिल हैं.
नई सुविधाएं
- हमने स्वाइप करके दिखाने की सुविधा जोड़ी है, ताकि दूसरी कार्रवाइयों को ऐक्सेस किया जा सके. यह पैटर्न, ‘लंबे समय तक दबाकर रखें’ पैटर्न के साथ काम करता है. यह एक ऐसा तरीका है जिससे उपयोगकर्ता, सेकंडरी कार्रवाइयों को दिखा सकता है. (I60862)
एपीआई में हुए बदलाव
- हमने
SwipeToRevealमें ऐक्शन कंपोज़ेबल मेंRevealScopeजोड़ा है. इससे उस ऑफ़सेट को ऐक्सेस किया जा सकता है जिस पर अन्य कार्रवाइयां दिखती हैं. (I3fd56)
गड़बड़ियां ठीक की गईं
- फ़्लिंग के बाद,
ScalingLazyColumnके Wear API 33 पर अटके रहने की समस्या ठीक की गई (Ic4599) - हमने
PositionIndicatorकी परफ़ॉर्मेंस में कुछ सुधार किए हैं, ताकि जंक कम हो सके. (I35e92) - हमने चिप और
CompactChipमें मौजूद एक गड़बड़ी को ठीक किया है. इस गड़बड़ी की वजह से, सिमैंटिक रोल को अबRole.Buttonपर सेट नहीं किया जा रहा था. (I93f91, b/277326264)
मौजूदा समस्याएं
हमें Android Studio में एक बग का पता चला है. इसकी वजह से, @WearPreviewDevices और @WearPreviewFontScales के साथ एनोटेट किए जाने पर, झलक रेंडर नहीं हो पाती है. इसे ठीक करने के लिए, जल्द ही एक अपडेट जारी किया जाएगा. कृपया ध्यान दें कि Android Studio Giraffe 2022.3.1 और इसके बाद के वर्शन में, Wear डिवाइस पर झलक देखने की सुविधा से जुड़े अन्य एनोटेशन ठीक से काम करते हैं.
हमने वर्शन 1.2.0-alpha07 में Wear Compose में DefaultTextStyle जोड़ा है. इसमें PlatformTextStyle.includeFontPadding की मौजूदा वैल्यू को true के तौर पर बनाए रखा गया है. बैकग्राउंड के लिए, Compose में फ़ॉन्ट पैडिंग ठीक करना लेख पढ़ें. हम Android प्लैटफ़ॉर्म पर एक जैसा अनुभव देने के लिए, 1.3 के शुरुआती ऐल्फ़ा वर्शन में DefaultTextStyle को बदल देंगे, ताकि फ़ॉन्ट पैडिंग को बंद किया जा सके. इससे बड़े फ़ॉन्ट साइज़ वाले टेक्स्ट के कुछ मामलों में, टेक्स्ट के कटने की समस्या ठीक हो जाएगी. इससे स्क्रीन लेआउट पर भी असर पड़ सकता है. इसलिए, स्क्रीनशॉट टेस्ट को अपडेट करना होगा. उदाहरण के लिए, बड़े फ़ॉन्ट साइज़ के साथ हमें यहां टेक्स्ट क्लिप होता हुआ दिखता है:
- फ़ॉन्ट पैडिंग बंद होने पर, यह मौजूद नहीं होता:
नई सेटिंग को अब अपनी थीम में टाइपोग्राफ़ी को बदलकर लागू किया जा सकता है. इसके लिए, उदाहरण कोड देखें.
वर्शन 1.2.0-alpha09
19 अप्रैल, 2023
androidx.wear.compose:compose-*:1.2.0-alpha09 रिलीज़ हो गया है. वर्शन 1.2.0-alpha09 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- डीपी में ऐंगलर चौड़ाई सेट करने के लिए,
CurvedModifierएपीआई मेंangularSizeDpजोड़ें (I89a52)
गड़बड़ियां ठीक की गईं
- हमने टाइम पिकर डेमो(Id0eb7) में सुलभता से जुड़ी समस्याएं ठीक कर दी हैं
वर्शन 1.2.0-alpha08
5 अप्रैल, 2023
androidx.wear.compose:compose-*:1.2.0-alpha08 रिलीज़ हो गया है. वर्शन 1.2.0-alpha08 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- हमने
ExpandableItemsStateका नाम बदलकरExpandableStateकर दिया है. (If85ea) - हमने
expandableButtonजोड़ा है, ताकि कॉन्टेंट बड़ा होने पर बटन को छोटा करने की सुविधा आसानी से बनाई जा सके. साथ ही, हमने बड़े किए जा सकने वाले कॉन्टेंट के उदाहरणों को भी अपडेट किया है. (Iae309)
गड़बड़ियां ठीक की गईं
- ज़्यादा संभावनाएं दिखाने के लिए, बेहतर तरीके से बड़े किए जा सकने वाले सैंपल.
expandableItemके ऐनिमेशन में बदलाव किया गया है, ताकि ऐनिमेशन के दौरान इसका कॉन्टेंट बीच में रहे. (I2f637) - स्टेट का इस्तेमाल करके, मैन्युअल तरीके से रंगों को ऐनिमेट करते समय, ज़रूरत से ज़्यादा रीकंपोज़िशन से बचने के लिए,
ToggleControlsको अपडेट किया गया. (I5d319)
वर्शन 1.2.0-alpha07
22 मार्च, 2023
androidx.wear.compose:compose-*:1.2.0-alpha07 रिलीज़ हो गया है. वर्शन 1.2.0-alpha07 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- हमने Expandable Item कॉम्पोनेंट (1.2.0-alpha06 में जोड़े गए) को मटीरियल से फ़ाउंडेशन में ले जाया है, क्योंकि इनका
MaterialThemeसे कोई मतलब नहीं था. (Ib0525)
गड़बड़ियां ठीक की गईं
- हमने
PickerGroupका इस्तेमाल करने वाली स्क्रीन के क्रैश होने की समस्या को ठीक कर दिया है. इसके लिए, हमने यह पक्का किया है कि जब किसी Picker पर फ़ोकस न हो, तबPickerGroupफ़ोकस को सही तरीके से मैनेज करे. हमने पिकर डेमो में आरएसबी स्क्रोलिंग की सुविधा भी जोड़ी है. (If8c19) - हमने डायलॉग ट्रांज़िशन को बेहतर बनाया है. अब इंट्रो ट्रांज़िशन, आउटरो ट्रांज़िशन से मैच करने के लिए ज़्यादा स्मूद है. (Ib5af9)
- हमने Wear Compose में
DefaultTextStyleजोड़ा है. इससेPlatformTextStyle.includeFontPaddingप्रॉपर्टी की वैल्यू डिफ़ॉल्ट रूप से true पर सेट हो जाती है. यह मौजूदा सेटिंग है. इससे हमें आने वाले समय में, फ़ॉन्ट पैडिंग को डिफ़ॉल्ट रूप से बंद करने की सुविधा को Compose लाइब्रेरी के साथ सिंक करने में मदद मिलेगी. ज़्यादा जानकारी के लिए, (Compose में फ़ॉन्ट पैडिंग ठीक करना) लेख पढ़ें. (I2aee8) - activity-compose के ज़रिए
UpsideDownCakeकी झलक दिखाने की सुविधा को पहले जैसा कर दिया गया है. इससे Google Play Store पर ऐप्लिकेशन पब्लिश करने में आ रही समस्या ठीक हो गई है. (I6443d)
वर्शन 1.2.0-alpha06
8 मार्च, 2023
androidx.wear.compose:compose-*:1.2.0-alpha06 रिलीज़ हो गया है. वर्शन 1.2.0-alpha06 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
CurvedBoxकॉम्पोनेंट जोड़ें. यह कॉम्पोनेंट, घुमावदार दुनिया में कॉम्पोनेंट को एक-दूसरे के ऊपर रखता है. (I29200)- बड़ा किए जा सकने वाले आइटम जोड़े गए - दो नए कॉम्पोनेंट जोड़े गए हैं. इनकी मदद से,
ScalingLazyColumnमें बड़ा किए जा सकने वाले आइटम के ग्रुप या बड़ा किए जा सकने वाले सिंगल आइटम को दिखाया जा सकता है. जैसे, ऐसा टेक्स्ट जिसमें लाइनों की संख्या बढ़ जाती है. (I95dd5) - हमने Wear की स्क्रीन पर कंपोज़ेबल की झलक देखने के लिए, ये कस्टम एनोटेशन जोड़े हैं:
WearPreviewSmallRoundछोटे, गोल डिवाइस पर कंपोज़ेबल की झलक दिखाता है;WearPreviewLargeRoundबड़े, गोल डिवाइस पर कंपोज़ेबल की झलक दिखाता है;WearPreviewSquareस्क्वेयर डिवाइस पर कंपोज़ेबल की झलक दिखाता है. इसके अलावा, फ़ॉलो करने और एक साथ कई झलक दिखाने वाले एनोटेशन:WearPreviewFontScalesकी मदद से, अलग-अलग फ़ॉन्ट साइज़ वाले Wear डिवाइस पर कंपोज़ेबल की झलक देखी जा सकती है. वहीं,WearPreviewDevicesकी मदद से, अलग-अलग Wear डिवाइसों पर कंपोज़ेबल की झलक देखी जा सकती है. इन पूर्वावलोकन का इस्तेमाल करने के लिए, आपको Android Studio (Giraffe Canary 6) या इसके बाद का वर्शन इस्तेमाल करना होगा. कृपया ध्यान दें कि अगर ये एनोटेशन आपके काम के नहीं हैं, तो Preview का इस्तेमाल किया जा सकता है. साथ ही, पैरामीटर के ज़रिए इसे और ज़्यादा पसंद के मुताबिक बनाया जा सकता है. (I397ff) - हमने
HierarchicalFocusCoordinatorको एक्सपेरिमेंट के तौर पर मार्क किया है. हालांकि, इसे कंपोज़ की मुख्य लाइब्रेरी में शामिल किया जा सकता है, क्योंकि इसका इस्तेमाल कई तरह से किया जा सकता है. (I3a768)
गड़बड़ियां ठीक की गईं
HierarchicalFocusCoordinatorमें मौजूद गड़बड़ी को ठीक किया गया है. अबfocusEnabledपैरामीटर के लिए पास किए गए लैम्डा में बदलाव होने पर, हम नए लैम्डा का सही तरीके से इस्तेमाल करते हैं. (Icb353)- हमने
Button,CompactButton,Chip,CompactChip, औरToggleButtonमें बैकग्राउंड के तौर पर प्राइमरी रंगों का इस्तेमाल करते समय, डिफ़ॉल्ट रूप से बंद किए गए कॉन्टेंट के रंग को बैकग्राउंड के तौर पर अपडेट कर दिया है. इससे ऐक्सेसिबिलिटी के लिए कंट्रास्ट बेहतर होता है. (I527cc)
वर्शन 1.2.0-alpha05
22 फ़रवरी, 2023
androidx.wear.compose:compose-*:1.2.0-alpha05 रिलीज़ हो गया है. वर्शन 1.2.0-alpha05 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
PickerGroupएपीआई को अपडेट किया गया है, ताकि कंपोज़ेबल में कम से कम साइज़ की पाबंदियों को ज़रूरत के हिसाब से लागू किया जा सके. 'सही है' के तौर पर सेट होने पर,PickerGroupपर पैरंट कंपोज़ेबल से पास की गई कम से कम पाबंदियों को अनुमति दी जाएगी. अगर इसे 'गलत है' के तौर पर सेट किया जाता है, तोPickerGroupकम से कम पाबंदियों को रीसेट कर देगा. (I3e046)- हमने Picker API में
animateScrollToOptionजोड़ा है, ताकि Picker के किसी विकल्प (I6fe67) में प्रोग्राम के हिसाब से ऐनिमेशन जोड़ा जा सके
गड़बड़ियां ठीक की गईं
- हमने
HorizontalPageIndicatorको अपडेट किया है, ताकि दाएं से बाएं लेआउट का इस्तेमाल किया जा सके. (Ia4359) HorizontalPageIndicatorमें दाएं से बाएं लेआउट के लिए, स्क्रीनशॉट की जांच की सुविधा जोड़ी गई (I6fbb8)SwipeDismissableNavHostTestमें ऐसे और टेस्ट जोड़े गए हैं जिनमेंTestNavHostControllerका इस्तेमाल किया जाता है (I61d54)
वर्शन 1.2.0-alpha04
8 फ़रवरी, 2023
androidx.wear.compose:compose-*:1.2.0-alpha04 रिलीज़ हो गया है. वर्शन 1.2.0-alpha04 में ये बदलाव शामिल हैं.
नई सुविधाएं
PickerGroupका इस्तेमाल करके, फ़ोकस एपीआई की मदद से एक साथ कई पिकर हैंडल किए जा सकते हैं. यह अलग-अलग पिकर के बीच फ़ोकस को मैनेज करता है. साथ ही, पैरामीटर के आधार पर पिकर को अपने-आप सेंटर में लाने की सुविधा देता है. इसके अलावा, यह डेवलपर को ग्रुप से इवेंट मैनेज करते समय, अलग-अलग पिकर के बीच फ़ोकस बदलने की अनुमति देता है. TalkBack मोड में,PickerGroupTalkBack के फ़ोकस को मैनेज करता है. इसके लिए, वह फ़ोकस को ग्रुप से चुने गए Picker पर ले जाता है. (I60840)
एपीआई में हुए बदलाव
- हमने Stepper में एक ओवरलोड जोड़ा है. इसमें एक अतिरिक्त
enableRangeSemanticsपैरामीटर है, ताकि डिफ़ॉल्ट रेंज सिमैंटिक्स (Ia61d4) को बंद करने में आसानी हो
गड़बड़ियां ठीक की गईं
ScalingLazyColumnको हॉरिज़ॉन्टल स्क्रोलिंग वाले पेज में नेस्ट करने की अनुमति दें (Iec3f8, b/266555016)- Stepper kdocs और
StepperTestटेस्ट को बेहतर बनाया गया है. (Ic118e) androidx.navigationडिपेंडेंसी को वर्शन 2.5.3 (If58ed) पर अपडेट किया गया
वर्शन 1.2.0-alpha03
25 जनवरी, 2023
androidx.wear.compose:compose-*:1.2.0-alpha03 रिलीज़ हो गया है. वर्शन 1.2.0-alpha03 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- हमने
ScalingLazyColumnऔर इससे जुड़ी क्लास कोandroidx.wear.compose.material.ScalingLazyColumnसेandrdoidx.wear.compose.foundation.lazy.ScalingLazyColumnपर माइग्रेट कर दिया है. माइग्रेशन के बारे में जानने के लिए, यह उदाहरण देखें. यह नई जगह,compose.foundation.lazy.LazyColumnकी जगह से ज़्यादा मिलती-जुलती है. साथ ही, यह ज़्यादा नैचुरल है, क्योंकि यह राय पर आधारित Material कॉम्पोनेंट नहीं है. यह बदलाव, नई Material3 लाइब्रेरी के लिए किया जा रहा है. हम मौजूदा Material लाइब्रेरी के साथ-साथ इस नई लाइब्रेरी पर भी काम करेंगे. (I060e7)
ScalingLazyColumn को Material से Foundation.Lazy में माइग्रेट करने के दौरान, ये बदलाव किए गए हैं:
- Material
ScalingLazyColumnको टारगेट करने वालेPositionIndicatorएपीआई बंद कर दिए गए हैं. कृपयाFoundation.Lazy ScalingLazyColumnपर अपडेट करें. इसके अलावा,ScalingLazyListLayoutInfoमेंanchorTypeफ़ील्ड जोड़ा गया. (I29d95) ScalingLazyColumnको Wear Compose Material पैकेज (I16d34) में, बंद की गई सुविधा के तौर पर मार्क किया गया है- हमने
ScrollAwayमॉडिफ़ायर को अपडेट किया है, ताकि Wear ComposeFoundation.LazyसेScalingLazyListStateका इस्तेमाल किया जा सके. साथ ही, हमने उस ओवरलोड को बंद कर दिया है जो Wear Compose Material सेScalingLazyListStateलेता था. (Ifc42c) - हमने Dialog API को अपडेट किया है, ताकि वे
Foundation.LazyसेScalingLazyListStateका इस्तेमाल कर सकें. साथ ही, हमने उन ओवरलोड को बंद कर दिया है जो MaterialScalingLazyListState(Ic8960) का इस्तेमाल करते थे - हमने Picker API को अपडेट किया है, ताकि वे
Foundation.LazyसेScalingParamsका इस्तेमाल कर सकें. साथ ही, हमने उन ओवरलोड को बंद कर दिया है जो MaterialScalingParamsका इस्तेमाल करते थे. (Idc3d8)
गड़बड़ियां ठीक की गईं
- हमने एक गड़बड़ी को ठीक किया है. इस गड़बड़ी की वजह से,
ScalingLazyListState.centerItemIndexमें ज़रूरत से ज़्यादा बार रीकंपोज़िशन होता था. हमने यह पक्का किया है किScalingLazyListState.centerItemIndexसिर्फ़ तब अपडेट पुश करे, जब वैल्यू में असल में बदलाव हुआ हो (Ia9f38) - हमने
SwipeToDismissBox(I3933b) की परफ़ॉर्मेंस को बेहतर बनाया है - Wear Compose Foundation (Ie00f9) में
ScalingLazyColumnके लिए बेंचमार्क टेस्ट जोड़े गए - हमने Material में कुछ इंटरनल
ScalingLazyColumnक्लास के तरीकों को अपडेट किया है, ताकिFoundation.Lazy(I38aab) से उनके इक्विवेलेंट का इस्तेमाल किया जा सके - हमने पिकर टेस्ट से जुड़ी कुछ समस्याएं ठीक की हैं. साथ ही, ऑफ़सेट के साथ स्क्रोल करने की सुविधा (I6ac34) की जांच करने के लिए, ज़्यादा टेस्ट जोड़े हैं
- हमने
ScalingLazyColumnइंटिग्रेशन डेमो को MaterialScalingLazyColumn(Ic6caa) के बजायFoundation.Lazyपर निर्भर रहने के लिए माइग्रेट किया है - हमने अपने
DatePickerडेमो (I961cd) में,fromDate/toDateपैरामीटर जोड़े हैं. ये पैरामीटर ज़रूरी नहीं हैं
वर्शन 1.2.0-alpha02
11 जनवरी, 2023
androidx.wear.compose:compose-*:1.2.0-alpha02 रिलीज़ हो गया है. वर्शन 1.2.0-alpha02 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- Android Compose यूज़र इंटरफ़ेस (यूआई) टेस्ट, अब फ़्रेम को एक्ज़ीक्यूट करते समय हर फ़्रेम के लिए लेआउट पास चलाएंगे, ताकि आइडल स्टेट पर पहुंचा जा सके. उदाहरण के लिए,
waitForIdleके ज़रिए. इससे उन टेस्ट पर असर पड़ सकता है जो लेआउट ऐनिमेशन के अलग-अलग फ़्रेम पर दावा करते हैं. (I8ea08, b/222093277) - पैरामीटर
minLinesको Wear Text में जोड़ा गया है, ताकिBasicText(I24874) के साथ इसका व्यवहार एक जैसा हो CompactChipTapTargetPaddingको सार्वजनिक कर दिया गया है, ताकि यह दस्तावेज़ (If1e70, b/234119038) में दिखे
गड़बड़ियां ठीक की गईं
wear.composeपैकेज के लिए, एक से ज़्यादा प्लैटफ़ॉर्म पर काम करने वाले वर्शन बनाने की सुविधा बंद करें (Iad3d7)scrollToOptionके लिए kdocs ठीक करें (I6f9a0)PlaceholderState.rememberPlaceholderState()को अपडेट किया गया है, ताकिrememberUpdatedStateका इस्तेमाल किया जा सके. इससेonContentReadyलैम्डा के अपडेट होने पर, स्थिति अपडेट हो जाएगी. (I02635, b/260343754)- हमने
Pickerकॉम्पोनेंट में टेक्स्ट के हिलने की समस्या को ठीक कर दिया है. इसके लिए, हमनेModifier.graphicsLayerमें जोड़ी गई नई कंपोज़िटिंग रणनीति का इस्तेमाल किया है. (I99302) - हमने एक गड़बड़ी ठीक की है. इसकी वजह से, हमारे
DatePickerडेमो (I660bd) में फ़्लिकरिंग हो रही थी - हमने 12 घंटे के समय और तारीख चुनने वाले टूल के डेमो (I05e12) को ऐक्सेस करने की सुविधा को बेहतर बनाया है
- हमने तारीख और समय चुनने वाले टूल के डेमो अपडेट किए हैं, ताकि जब उन्हें चुना न जाए, तब आरएसबी में हुए बदलावों का उन पर असर न पड़े (I4aecb)
वर्शन 1.2.0-alpha01
7 दिसंबर, 2022
androidx.wear.compose:compose-*:1.2.0-alpha01 रिलीज़ हो गया है. वर्शन 1.2.0-alpha01 में ये बदलाव शामिल हैं.
नई सुविधाएं
- हमने प्लेसहोल्डर की एक्सपेरिमेंटल सुविधा को अपडेट किया है, ताकि कॉन्टेंट तैयार होने पर “मिटाएं” इफ़ेक्ट तुरंत लागू हो जाए. इसके लिए, अगले ऐनिमेशन लूप के शुरू होने का इंतज़ार न करना पड़े. हमने शिमर और वाइप ऑफ़ ऐनिमेशन में भी कुछ बदलाव किए हैं. (I5a7f4)
एपीआई में हुए बदलाव
- हमने एक
HierarchicalFocusCoordinatorcomposable जोड़ा है. इससे कंपोज़िशन के सब-ट्री को फ़ोकस मोड में चालू या बंद के तौर पर मार्क किया जा सकता है.(I827cb) - हमने
ToggleButtonके लिए, सिमैंटिक भूमिका को ओवरराइड करने वाली एक नई प्रॉपर्टी जोड़ी है.(I67132) - हमने
TimeTextDefaults.TimeFormat12Hoursको अपडेट किया है, ताकिTimeTextमें AM/PM न दिखे. इससेTimeTextएपीआई मेंtimeSourceपैरामीटर की डिफ़ॉल्ट वैल्यू बदल जाएगी. (I1eb7f) - हमने Picker API को बेहतर बनाया है, ताकि मल्टी-पिकर वाली स्क्रीन पर इसे आसानी से इस्तेमाल किया जा सके.
userScrollEnabledनाम की एक नई प्रॉपर्टी जोड़ी गई है. इससे यह कंट्रोल किया जा सकता है कि उपयोगकर्ता के स्क्रोल करने पर, पिकर चालू रहे या नहीं. (I3c3aa)
गड़बड़ियां ठीक की गईं
- हमने फ़ाइनल यूज़र एक्सपीरियंस (यूएक्स) की खास बातों से मेल खाने के लिए,
OutlinedButton/OutlinedCompactButtonकी डिफ़ॉल्ट बॉर्डर की चौड़ाई को 2.dp से बदलकर 1.dp कर दिया है. (Icf84d) - खाली
ScalingLazyColumnमें जोड़े गए पहले आइटम के दिखने के समय को कम करने के लिए, हमने अनुमानितautoCentering topPaddingसमय जोड़ा है. यह समय तब जोड़ा जाता है, जब कॉन्टेंट खाली होता है. इस बदलाव से, टॉप पैडिंग की ज़रूरी जगह का हिसाब लगाया जाता है. इसके लिए, शुरुआती आइटम की ऊंचाई 0.dp मानी जाती है.ScalingLazyListAnchorType.ItemStartके लिए, इससे टॉप पैडिंग का सही हिसाब लगाया जाएगा.ScalingLazyListAnchorType.ItemCenterके लिए, यह हिसाब गलत होगा, क्योंकि कॉन्टेंट का साइज़ सही तरीके से तय करने के लिए आइटम की ऊंचाई की ज़रूरत होती है. इससे आइटम की असल ऊंचाई के आधार पर, स्क्रोल करके जगह पर ले जाने का छोटा इफ़ेक्ट मिलता है.(I239a4) - हमने
SwipeToDismissऐनिमेशन पर लागू किए गए बैकग्राउंड स्क्रिम को Wear प्लैटफ़ॉर्म से मैच करने के लिए अपडेट किया है. (I9003e) - हमने साइज़ 0 वाले आइटम के लिए,
LazyListStateऔरScalingLazyListStateको हैंडल करने कीPositionIndicatorसमस्या को ठीक कर दिया है, ताकि शून्य से भाग देने पर होने वाली गड़बड़ियों से बचा जा सके.(Ic28dd)
वर्शन 1.1
वर्शन 1.1.2
8 फ़रवरी, 2023
androidx.wear.compose:compose-foundation:1.1.2, androidx.wear.compose:compose-material:1.1.2, और androidx.wear.compose:compose-navigation:1.1.2 रिलीज़ किए गए हैं. वर्शन 1.1.2 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- हमने एक गड़बड़ी को ठीक किया है. इस गड़बड़ी की वजह से,
ScalingLazyListState.centerItemIndexमें ज़रूरत से ज़्यादा बार रीकंपोज़िशन होता था. हमने यह पक्का किया है किScalingLazyListState.centerItemIndexसिर्फ़ तब अपडेट पुश करे, जब वैल्यू में असल में बदलाव हुआ हो (Ia9f38)
वर्शन 1.1.1
11 जनवरी, 2023
androidx.wear.compose:compose-foundation:1.1.1, androidx.wear.compose:compose-material:1.1.1, और androidx.wear.compose:compose-navigation:1.1.1 रिलीज़ किए गए हैं. वर्शन 1.1.1 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
PlaceholderState.rememberPlaceholderState()को अपडेट किया गया है, ताकिrememberUpdatedStateका इस्तेमाल किया जा सके. इससेonContentReadyलैम्डा के अपडेट होने पर, स्थिति अपडेट हो जाएगी. (I02635, b/260343754)
वर्शन 1.1.0
7 दिसंबर, 2022
androidx.wear.compose:compose-foundation:1.1.0, androidx.wear.compose:compose-material:1.1.0, और androidx.wear.compose:compose-navigation:1.1.0 रिलीज़ किए गए हैं. वर्शन 1.1.0 में ये बदलाव शामिल हैं.
1.0.0 के बाद हुए अहम बदलाव
- Compose for Wear OS 1.1.0 का स्टेबल वर्शन रिलीज़ किया गया (ज़्यादा जानें).
- Wear Compose 1.1 में हुए मुख्य बदलावों की सूची देखने के लिए, (Compose for Wear OS 1.1 Beta01) के रिलीज़ नोट देखें.
नई सुविधाएं
- हमने प्लेसहोल्डर की एक्सपेरिमेंटल सुविधा को अपडेट किया है, ताकि कॉन्टेंट तैयार होने पर “मिटाएं” इफ़ेक्ट तुरंत लागू हो जाए. इसके लिए, अगले ऐनिमेशन लूप के शुरू होने का इंतज़ार न करना पड़े. हमने शिमर और वाइप ऑफ़ ऐनिमेशन में भी कुछ बदलाव किए हैं. (I5a7f4)
गड़बड़ियां ठीक की गईं
- हमने फ़ाइनल यूज़र एक्सपीरियंस (यूएक्स) की खास बातों से मेल खाने के लिए,
OutlinedButton/OutlinedCompactButtonकी डिफ़ॉल्ट बॉर्डर की चौड़ाई को 2.dp से बदलकर 1.dp कर दिया है. (Icf84d) - खाली
ScalingLazyColumnमें जोड़े गए पहले आइटम के दिखने के समय को कम करने के लिए, हमने अनुमानितautoCentering topPaddingसमय जोड़ा है. यह समय तब जोड़ा जाता है, जब कॉन्टेंट खाली होता है. इस बदलाव से, टॉप पैडिंग की ज़रूरी जगह का हिसाब लगाया जाता है. इसके लिए, शुरुआती आइटम की ऊंचाई 0.dp मानी जाती है.ScalingLazyListAnchorType.ItemStartके लिए, इससे टॉप पैडिंग का सही हिसाब लगाया जाएगा.ScalingLazyListAnchorType.ItemCenterके लिए, यह हिसाब गलत होगा, क्योंकि कॉन्टेंट का साइज़ सही तरीके से तय करने के लिए आइटम की ऊंचाई की ज़रूरत होती है. इससे आइटम की असल ऊंचाई के आधार पर, स्क्रोल करके जगह पर ले जाने का छोटा इफ़ेक्ट मिलता है.(I239a4) - हमने
SwipeToDismissऐनिमेशन पर लागू किए गए बैकग्राउंड स्क्रिम को अपडेट किया है, ताकि यह Wear प्लैटफ़ॉर्म से मेल खाए.(I9003e) - हमने साइज़ 0 वाले आइटम के लिए,
LazyListStateऔरScalingLazyListStateको हैंडल करने कीPositionIndicatorसमस्या को ठीक कर दिया है, ताकि शून्य से भाग देने पर होने वाली गड़बड़ियों से बचा जा सके.(Ic28dd)
वर्शन 1.1.0-rc01
9 नवंबर, 2022
androidx.wear.compose:compose-foundation:1.1.0-rc01, androidx.wear.compose:compose-material:1.1.0-rc01, और androidx.wear.compose:compose-navigation:1.1.0-rc01 रिलीज़ किए गए हैं. वर्शन 1.1.0-rc01 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- हमने
Placeholders,ScrollAway,RadioButton,Switch,Checkbox,OutlinedButton,OutlinedCompactButton,OutlinedChip, औरOutlinedCompactChipके लिए, बेसलाइन प्रोफ़ाइल के नियम जोड़े हैं. (I8249c) - हमने
Modifier.scrollAwayमें मौजूद एक बग को ठीक कर दिया है. इससे, अगर तय किया गयाitemIndexअमान्य है (उदाहरण के लिए, अगर आइटम इंडेक्स रेंज से बाहर है), तो अब भीTimeTextदिखेगा. (I2137a) - हमने
SwipeToDismissBoxऐनिमेशन को अपडेट किया है, ताकि यह प्लैटफ़ॉर्म के साथ काम कर सके. शुरुआती स्क्वीज़ ऐनिमेशन के बाद, अब स्क्रीन दाईं ओर तब स्लाइड होती है, जब खारिज करने की सुविधा चालू हो जाती है. (I41d34) - ऑप्टिमाइज़ेशन के तौर पर, हमने
Modifier.scrollAwayको अपडेट किया है, ताकि वह सिर्फ़ मेज़र ब्लॉक के अंदर मौजूदscrollStateको पढ़े. इससे हर बार मेज़रमेंट के बाद, मॉडिफ़ायर को फिर से कंपोज़ करने से बचा जा सकेगा. (I4c6f1) - हमने प्लेसहोल्डर के लिए दस्तावेज़ और एक सैंपल जोड़ा है. इससे यह पता चलेगा कि एक ही कंपोज़ेबल पर लागू होने पर,
Modifier.placeholderऔरModifier.placeholderShimmerको सही क्रम में कैसे दिखाया जाता है. (Ie96f4, b/256583229) - हमने फ़ाइनल यूज़र एक्सपीरियंस (यूएक्स) की खास बातों से मेल खाने के लिए,
OutlinedCompactChip/OutlinedChipकी डिफ़ॉल्ट बॉर्डर की चौड़ाई को 2.dp से बदलकर 1.dp कर दिया है. (Ib3d8e) - हमने
rememberPickerStateमें एक गड़बड़ी ठीक की है. इसमें अपडेट किए गए इनपुट सेव नहीं होते थे. इसलिए, इनपुट में बदलाव करने के बाद कंपोज़ेबल अपडेट नहीं होते थे. (I49ff6, b/255323197) - हमने प्लेसहोल्डर के यूज़र इंटरफ़ेस (यूआई) में कुछ अपडेट किए हैं. जैसे, 1) शिमर ग्रेडिएंट को स्क्रीन साइज़ के 1.5 गुना पर सेट किया गया है, 2) शिमर प्रोग्रेशन में ईज़िंग (क्यूबिक बेज़ियर) जोड़ी गई है, और 3) वाइप-ऑफ़ ऐनिमेशन की स्पीड को बढ़ाया गया है (250 मि॰से॰). (Id29c1)
- हमने प्लेसहोल्डर के वाइप ऑफ़ इफ़ेक्ट में यूज़र इंटरफ़ेस (यूआई) से जुड़ी एक गड़बड़ी को ठीक किया है. इसमें कॉम्पोनेंट की पोज़िशन को ध्यान में न रखने की वजह से, चिप और कार्ड के बैकग्राउंड थोड़ा पहले मिट रहे थे. (I2c7cb)
- हमने प्लेसहोल्डर के बैकग्राउंड को ड्रॉ करने की सुविधा को अपडेट किया है. इससे, रंगों को लेयर करने के बजाय, उन्हें मर्ज किया जा सकेगा. इससे, अलग-अलग काटी गई लेयर के ऐल्फ़ा ब्लेंडिंग का खतरा कम हो जाएगा. साथ ही, प्लेसहोल्डर के बैकग्राउंड के किनारों पर मौजूद रंगों को भी मर्ज किया जा सकेगा. (I2ea26)
- हमने
ScalingLazyListState.centerItemIndex/centerItemOffsetके हिसाब में सुधार किया है, ताकि अगर दो आइटम व्यूपोर्ट की सेंटर लाइन के दोनों ओर मौजूद हों, तो सबसे नज़दीकी आइटम कोcenterItemमाना जाएगा. (I30709, b/254257769) - हमने
ScalingLazyListState.layoutInfo.visibleItemsInfoमें मौजूद एक गड़बड़ी को ठीक कर दिया है. इस गड़बड़ी की वजह से,ScalingLazyColumnशुरू होने के दौरान ऑफ़सेट की गलत जानकारी दिख रही थी. अब जब तक सूची के सभी आइटम नहीं दिख जाते और उनके ऑफ़सेट सही नहीं हो जाते, तब तक एक खाली सूची दिखाई जाएगी.ScalingLazyListState.layoutInfo.visibleItemsInfo.isNotEmpty()की जांच करने से यह पुष्टि हो जाएगी किScalingLazyColumnशुरू हो गया है और आइटम दिख रहे हैं. (I3a3b8)
वर्शन 1.1.0-beta01
24 अक्टूबर, 2022
androidx.wear.compose:compose-foundation:1.1.0-beta01, androidx.wear.compose:compose-material:1.1.0-beta01, और androidx.wear.compose:compose-navigation:1.1.0-beta01 रिलीज़ किए गए हैं. वर्शन 1.1.0-beta01 में ये बदलाव शामिल हैं.
Wear OS 1.1 के लिए Compose में क्या-क्या है
Compose for Wear OS के 1.1.0-beta01 वर्शन से पता चलता है कि लाइब्रेरी का यह वर्शन, सभी सुविधाओं के साथ उपलब्ध है और एपीआई लॉक है.
- Wear Compose 1.1 की रिलीज़ में ये नई सुविधाएं शामिल हैं:
- पिकर - पिकर में सुलभता से जुड़ी सुविधाएं बेहतर बनाई गई हैं, ताकि मल्टी-पिकर स्क्रीन को स्क्रीन रीडर की मदद से नेविगेट किया जा सके और कॉन्टेंट की जानकारी ऐक्सेस की जा सके
- Picker
contentDescriptionपैरामीटर का इस्तेमाल अब सिर्फ़ चुने गए Picker विकल्प के लिए किया जाता है. साथ ही, यह एक ऐसी स्ट्रिंग लेता है जिसमें शून्य वैल्यू हो सकती है. पिछले कमिट में, विकल्प से लेकर कॉन्टेंट के ब्यौरे तक की मैपिंग पास करना ज़रूरी था. हालांकि, सिर्फ़ चुने गए विकल्प का इस्तेमाल किया जाता था. - अब पिकर आइटम हमेशा बीच में अलाइन होते हैं. इससे उस बग को ठीक किया गया है जिसमें
gradientRatioको शून्य पर सेट करने से अलाइनमेंट बदल जाता था. Chip/ToggleChip- हमनेChip/ToggleChipके लिए डिफ़ॉल्ट ग्रेडिएंट अपडेट किए हैं, ताकि उन्हें उपयोगकर्ता अनुभव से जुड़ी नई खास बातों के मुताबिक बनाया जा सके.ChipDefaults.gradientBackgroundChipColorsको अपडेट किया गया है. अब यह 32.5% के बजाय 50% से शुरू होगा.Chip/ToggleChip- चिप के आकार में बदलाव करने के लिए, ओवरलोड जोड़े गएChip/Button/ToggleButton- चिप और बटन के लिए, आउटलाइन वाली नई स्टाइल जोड़ी गई है. साथ ही, नएOutlinedChipऔरOutlinedButtonकंपोज़ेबल जोड़े गए हैं. ये कंपोज़ेबल, पतले बॉर्डर वाले पारदर्शीChip/Buttonउपलब्ध कराते हैं.- कार्ड - कार्ड के लिए डिफ़ॉल्ट ग्रेडिएंट अपडेट किए गए हैं, ताकि उन्हें यूज़र एक्सपीरियंस (यूएक्स) की नई खास बातों के मुताबिक बनाया जा सके.
CardDefaults.cardBackgroundPainterको अपडेट किया गया है. अब यह प्राइमरी रंग के 30% से शुरू होकरonSurfaceVariantके 20% पर खत्म होगा. पहले यहonSurfaceVariantके 20% से शुरू होकर 10% पर खत्म होता था.ToggleChip.toggleChipColorsमें बदलाव किया गया है. अब यह 75% सर्फ़ेस के लीनियर ग्रेडिएंट से बदलकर, 32.5% प्राइमरी से 0% सर्फ़ेस से 50% प्राइमरी हो गया है. Button/ToggleButton- बटन के आकार में बदलाव करने के लिए प्रॉपर्टी जोड़ी गईं.- थीम -
MaterialThemeमें कई डिफ़ॉल्ट रंगों को अपडेट किया गया है, ताकि ऐक्सेसिबिलिटी को बेहतर बनाया जा सके. ऐसा इसलिए किया गया है, क्योंकि ओरिजनल रंगों में काफ़ी कंट्रास्ट नहीं था. इस वजह से, उपयोगकर्ताओं को चिप/कार्ड/बटन के बैकग्राउंड और थीम के बैकग्राउंड के रंग में अंतर करने में परेशानी होती थी. InlineSlider/Stepper- बटन की भूमिकाएं जोड़ी गईं, ताकिTalkbackउन्हें बटन के तौर पर पहचान सके.- स्केफ़ोल्ड -
PositionIndicatorको अब इस तरह से रखा गया है कि यह सिर्फ़ उतनी जगह ले जितनी ज़रूरी है. यह जानकारी तब काम आती है, जब इसमें सिमैंटिक जानकारी जोड़ी जाती है. उदाहरण के लिए, TalkBack को अब स्क्रीन पर मौजूदPositionIndicatorकी सही सीमाएं मिलती हैं. CurvedText/TimeText-Modifier.scrollAwayजोड़ा गया है. यह स्क्रोल की स्थिति के आधार पर, किसी आइटम को वर्टिकल तौर पर व्यू में लाता/बाहर ले जाता है. इसमेंColumn,LazyColumn, औरScalingLazyColumnके साथ काम करने के लिए ओवरलोड होते हैं. आम तौर पर,ScrollAwayका इस्तेमाल किसीTimeTextको व्यू से बाहर ले जाने के लिए किया जाता है, ताकि उपयोगकर्ता आइटम की सूची को ऊपर की ओर स्क्रोल कर सके.CurvedText/TimeText-CurvedTextStyleमेंfontFamily,fontStyle, औरfontSynthesisके साथ काम करने की सुविधा जोड़ी गई है. इसका इस्तेमालcurvedTextऔरbasicCurvedTextपर किया जा सकता हैCurvedText/TimeText-CurvedTextStyleपर कंस्ट्रक्टर और कॉपी करने के तरीके मेंfontWeightजोड़ा गयाToggleControls-ToggleChipऔरSplitToggleChipके साथ इस्तेमाल करने के लिए, ऐनिमेट किए गएCheckbox,Switch, औरRadioButtonटॉगल कंट्रोल जोड़े गए. इनका इस्तेमाल,ToggleChipDefaults(switchIcon,checkboxIcon, औरradioIcon) की ओर से उपलब्ध कराए गए स्टैटिक आइकॉन के बजाय किया जा सकता है.- प्लेसहोल्डर - एक्सपेरिमेंट के तौर पर प्लेसहोल्डर इस्तेमाल करने की सुविधा जोड़ी गई. इसमें तीन अलग-अलग विज़ुअल इफ़ेक्ट हैं, जिन्हें एक साथ काम करने के लिए डिज़ाइन किया गया है.
- सबसे पहले, प्लेसहोल्डर बैकग्राउंड ब्रश इफ़ेक्ट का इस्तेमाल किया जाता है. इसका इस्तेमाल चिप और कार्ड जैसे कंटेनर में किया जाता है. इससे कॉन्टेंट लोड होने का इंतज़ार करते समय, सामान्य बैकग्राउंड पर ड्रॉ किया जा सकता है.
- दूसरा, लोडिंग के दौरान कॉन्टेंट के ऊपर स्टेडियम के आकार का प्लेसहोल्डर विजेट बनाने के लिए मॉडिफ़ायर (
Modifier.placeholder()) का इस्तेमाल किया जाता है. - तीसरा, मॉडिफ़ायर ग्रेडिएंट/शिमर इफ़ेक्ट (
Modifier.placeholderShimmer()) है. इसे अन्य इफ़ेक्ट के ऊपर बनाया जाता है, ताकि उपयोगकर्ताओं को यह पता चल सके कि हम डेटा लोड होने का इंतज़ार कर रहे हैं.- इन सभी इफ़ेक्ट को इस तरह से डिज़ाइन किया गया है कि ये एक साथ काम करें. साथ ही, ये एक साथ चमकें और मिटें.
- Core Compose की डिपेंडेंसी को 1.2 से 1.3 पर अपडेट किया गया
एपीआई में हुए बदलाव
- अब फ़ॉन्ट पैरामीटर (
fontFamily,fontWeight,fontStyle, औरfontSynthesis) को सीधे तौर परcurvedText(Idc422) के पैरामीटर के तौर पर सेट किया जा सकता है
गड़बड़ियां ठीक की गईं
curveTextऔरbasicCurvedTextअब TalkBack के साथ ठीक से काम करेंगे. इनके साथ, कंपोज़-यूआई नोड जुड़ा हुआ है. इसका साइज़ और जगह सही है, लेकिन यह खाली है. इसमें टेक्स्ट को कॉन्टेंट के ब्यौरे के तौर पर इस्तेमाल किया जाता है (I7af7c, b/210721259)Pickerमें बग ठीक किया गया है. इससे Pickers के इंटरनलScalingLazyColumnपर autoCentering पैरामीटर की सेटिंग को साफ़ तौर पर जोड़ने के लिएPickerState.repeatedItems = falseकिया जा सकता है. इससे यह पक्का किया जा सकता है कि व्यू के बीच में, पहले विकल्प को स्क्रोल किया जा सके. (I8a4d7)
वर्शन 1.1.0-alpha07
5 अक्टूबर, 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha07, androidx.wear.compose:compose-material:1.1.0-alpha07, और androidx.wear.compose:compose-navigation:1.1.0-alpha07 रिलीज़ किए गए हैं. वर्शन 1.1.0-alpha07 में ये बदलाव शामिल हैं.
नई सुविधाएं
- हमने एक्सपेरिमेंट के तौर पर प्लेसहोल्डर के लिए सहायता जोड़ी है. इसमें तीन अलग-अलग विज़ुअल इफ़ेक्ट हैं, जिन्हें एक साथ काम करने के लिए डिज़ाइन किया गया है. सबसे पहले, प्लेसहोल्डर बैकग्राउंड ब्रश इफ़ेक्ट का इस्तेमाल किया जाता है. इसका इस्तेमाल चिप और कार्ड जैसे कंटेनर में किया जाता है. इससे कॉन्टेंट लोड होने का इंतज़ार करते समय, सामान्य बैकग्राउंड पर ड्रॉ किया जा सकता है. दूसरा, लोडिंग के दौरान कॉन्टेंट के ऊपर स्टेडियम के आकार का प्लेसहोल्डर विजेट बनाने के लिए मॉडिफ़ायर (
Modifier.placeholder()) का इस्तेमाल किया जाता है. तीसरा, मॉडिफ़ायर ग्रेडिएंट/शिमर इफ़ेक्ट (Modifier.placeholderShimmer()) है. इसे अन्य इफ़ेक्ट के ऊपर बनाया जाता है, ताकि उपयोगकर्ताओं को यह पता चल सके कि हम डेटा लोड होने का इंतज़ार कर रहे हैं. इन सभी इफ़ेक्ट को इस तरह से डिज़ाइन किया गया है कि ये एक साथ काम करें. साथ ही, ये एक साथ चमकें और मिटें. (I3c339)
एपीआई में हुए बदलाव
CurvedTextStyleमेंfontWeight,fontFamily,fontStyle, औरfontSynthesisके लिए सहायता जोड़ी गई है. इसका इस्तेमालcurvedTextऔरbasicCurvedTextपर किया जा सकता है. इन पैरामीटर का इस्तेमाल, घुमावदार टेक्स्ट पर इस्तेमाल किए जाने वाले फ़ॉन्ट और स्टाइल को तय करने के लिए किया जा सकता है.(Iaa1a8),(I72759)Modifier.scrollAwayके ऑफ़सेट पैरामीटर को Dp में अपडेट किया गया है, ताकि यहModifier.offsetके साथ मेल खाए. पहले यह पिक्सल में था. साथ ही, बेहतर परफ़ॉर्मेंस के लिए इसेLayoutModifierके तौर पर फिर से बनाया गया है. (I9f94b)- टॉगल कंट्रोल वाले नए एपीआई के तहत, हमने
RadioButton’s circleColorका नाम बदलकरringColorकर दिया है. (I28fa9) - हमने
ToggleChipऔरSplitToggleChipके साथ इस्तेमाल करने के लिए, ऐनिमेटेडCheckbox,Switch, औरRadioButtonटॉगल कंट्रोल जोड़े हैं. इनका इस्तेमाल,ToggleChipDefaults(switchIcon,checkboxIcon, औरradioIcon) की ओर से उपलब्ध कराए गए स्टैटिक आइकॉन के बजाय किया जा सकता है. (I8a8c4)
वर्शन 1.1.0-alpha06
21 सितंबर, 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha06, androidx.wear.compose:compose-material:1.1.0-alpha06, और androidx.wear.compose:compose-navigation:1.1.0-alpha06 रिलीज़ किए गए हैं. वर्शन 1.1.0-alpha06 में ये बदलाव शामिल हैं.
नई सुविधाएं
- हमने
Modifier.scrollAwayजोड़ा है. यह स्क्रोल की स्थिति के आधार पर, किसी आइटम को व्यू में ऊपर/नीचे की ओर स्क्रोल करता है. इसमेंColumn,LazyColumn, औरScalingLazyColumnके साथ काम करने के लिए ओवरलोड होते हैं. आम तौर पर,ScrollAwayका इस्तेमाल किसीTimeTextको व्यू से बाहर स्क्रोल करने के लिए किया जाता है, क्योंकि उपयोगकर्ता आइटम की सूची को ऊपर की ओर स्क्रोल करना शुरू करता है. (I61766)
गड़बड़ियां ठीक की गईं
PositionIndicatorको अब इस तरह से पोज़िशन और साइज़ किया गया है कि यह सिर्फ़ उतनी जगह ले जितनी ज़रूरी है. यह जानकारी तब काम आती है, जब इसमें सिमैंटिक जानकारी जोड़ी जाती है. उदाहरण के लिए, TalkBack को अब स्क्रीन पर मौजूदPositionIndicatorकी सही सीमाएं मिलती हैं. (Ie6106, b/244409133)
वर्शन 1.1.0-alpha05
7 सितंबर, 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha05, androidx.wear.compose:compose-material:1.1.0-alpha05, और androidx.wear.compose:compose-navigation:1.1.0-alpha05 रिलीज़ किए गए हैं. वर्शन 1.1.0-alpha05 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
InlineSliderऔरStepperमें बटन की भूमिकाएं जोड़ी गई हैं, ताकि Talkback उन्हें बटन के तौर पर पहचान सके. (Icb46c, b/244260275)- हमने Scaffold में, पोज़िशन और पेज इंडिकेटर के z-ऑर्डर को ठीक कर दिया है. ये इंडिकेटर अब विनेट के ऊपर दिखेंगे. इसलिए, अगर विनेट मौजूद है, तो ये इंडिकेटर उससे नहीं छिपेंगे. (Ib988f, b/244207528)
वर्शन 1.1.0-alpha04
24 अगस्त, 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha04, androidx.wear.compose:compose-material:1.1.0-alpha04, और androidx.wear.compose:compose-navigation:1.1.0-alpha04 रिलीज़ किए गए हैं. वर्शन 1.1.0-alpha04 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- हमने MaterialTheme में कई डिफ़ॉल्ट रंगों को अपडेट किया है, ताकि ऐक्सेसिबिलिटी को बेहतर बनाया जा सके. ऐसा इसलिए किया गया है, क्योंकि ओरिजनल रंगों में ज़रूरत के मुताबिक कंट्रास्ट नहीं था. इस वजह से, उपयोगकर्ताओं को चिप/कार्ड/बटन के बैकग्राउंड और थीम के बैकग्राउंड के रंग में अंतर करने में मुश्किल होती थी. अपडेट किए गए रंग ये हैं: surface(0xFF202124->0xFF303133), onPrimary(0xFF202124->0xFF303133), onSecondary(0xFF202124->0xFF303133), primaryVariant(0xFF669DF6->0xFF8AB4F8), और onError(0xFF202124->0xFF000000). हालांकि, रंगों में किए गए बदलावों का असर काफ़ी कम होता है, लेकिन इससे मौजूदा स्क्रीनशॉट टेस्ट पर असर पड़ सकता है. (81ab09)
गड़बड़ियां ठीक की गईं
ScalingLazyColumnमें लॉजिक से जुड़ी एक गड़बड़ी को ठीक किया गया है. इसकी वजह से, सूची में कम आइटम (आम तौर पर सिर्फ़ दो) वाली सूचियां, शुरू नहीं हो पाती थीं और इस वजह से वे पारदर्शी हो जाती थीं. (504347)
वर्शन 1.1.0-alpha03
10 अगस्त, 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha03, androidx.wear.compose:compose-material:1.1.0-alpha03, और androidx.wear.compose:compose-navigation:1.1.0-alpha03 रिलीज़ किए गए हैं. वर्शन 1.1.0-alpha03 में ये बदलाव शामिल हैं.
नई सुविधाएं
- हमने
ChipsऔरButtonsके लिए, आउटलाइन वाली नई स्टाइल जोड़ी है. साथ ही, नएOutlinedChipऔरOutlinedButtonकंपोज़ेबल जोड़े हैं. ये कंपोज़ेबल, पतले बॉर्डर वाले पारदर्शीChip/Buttonउपलब्ध कराते हैं. (Id5972)
एपीआई में हुए बदलाव
- बटन के आकार में बदलाव करने के लिए, ओवरलोड जोड़े गए (Icccde)
गड़बड़ियां ठीक की गईं
- हमने
ToggleChipके टॉगल कंट्रोल एरिया के साइज़ को ठीक कर दिया है, क्योंकि यह यूज़र एक्सपीरियंस (यूएक्स) स्पेसिफ़िकेशन से मेल नहीं खा रहा था. यूएक्स स्पेसिफ़िकेशन के मुताबिक, लेबल और 24x24.dp टॉगल कंट्रोल आइकॉन एरिया के बीच 4.dp का स्पेसर होना चाहिए. इससे कुल चौड़ाई 28.dp हो जाती है. हालांकि, लागू करने के दौरान 36x24.dp टॉगल कंट्रोल एरिया गलत तरीके से दिया जा रहा है. इससे, इस्तेमाल किए जा सकने वाले टेक्स्ट लेबल की जगह 8 डीपी कम हो जाती है. ध्यान दें: इस गड़बड़ी को ठीक करने के बाद, टेक्स्ट लेबल के लिए ज़्यादा जगह मिल जाती है. इससे, टेक्स्ट के लेआउट पर (सकारात्मक) असर पड़ सकता है. अगर आपके पासToggleChipsवाले स्क्रीनशॉट टेस्ट हैं, तो उन्हें अपडेट करना पड़ सकता है. (I514c8, b/240548670)
वर्शन 1.1.0-alpha02
27 जुलाई, 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha02, androidx.wear.compose:compose-material:1.1.0-alpha02, और androidx.wear.compose:compose-navigation:1.1.0-alpha02 रिलीज़ किए गए हैं. वर्शन 1.1.0-alpha02 में ये बदलाव शामिल हैं.
नई सुविधाएं
- हमने Compose for Wear OS की डिपेंडेंसी को मुख्य Compose लाइब्रेरी में 1.2.0 से 1.3.0-alpha0X पर स्विच कर दिया है
एपीआई में हुए बदलाव
- चिप के आकार में बदलाव करने के लिए, ओवरलोड जोड़े गए (I02e87)
गड़बड़ियां ठीक की गईं
- हमने डायलॉग को दिखाने/छिपाने के दौरान विगनेट की दृश्यता को ऐनिमेट किया है, ताकि यह मौजूदा स्केलिंग ऐनिमेशन के साथ काम कर सके. (Ida33e)
- हमने एक गड़बड़ी को ठीक किया है. इस गड़बड़ी में, स्क्रोल करते समय कुछ फ़्लिंग व्यवहार के साथ शून्य से भाग देने की समस्या हो सकती थी. (I86cb6)
ChipDefaults.childChipColor()में मौजूद एक बग को ठीक किया गया है, ताकि यह पक्का किया जा सके कि बैकग्राउंड का रंग पूरी तरह से पारदर्शी हो. (I2b3c3, b/238057342)
वर्शन 1.1.0-alpha01
29 जून, 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha01, androidx.wear.compose:compose-material:1.1.0-alpha01, और androidx.wear.compose:compose-navigation:1.1.0-alpha01 रिलीज़ किए गए हैं. वर्शन 1.1.0-alpha01 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- Picker के
contentDescriptionपैरामीटर का इस्तेमाल अब सिर्फ़ चुने गए Picker विकल्प के लिए किया जाता है. साथ ही, यह एक ऐसी स्ट्रिंग लेता है जिसमें नल वैल्यू हो सकती है. इससे पहले, विकल्प से कॉन्टेंट के ब्यौरे तक मैपिंग पास करना ज़रूरी था. हालांकि, सिर्फ़ चुने गए विकल्प का इस्तेमाल किया जाता था. (Ife6a7) - हमने पिकर में सुलभता से जुड़ी कुछ सुविधाएं जोड़ी हैं, ताकि मल्टी-पिकर स्क्रीन को स्क्रीन रीडर की मदद से नेविगेट किया जा सके. साथ ही, कॉन्टेंट के ब्यौरे को ऐक्सेस किया जा सके (I64edb)
गड़बड़ियां ठीक की गईं
- हमने Wear Compose लाइब्रेरी (I9c694) के साथ पैकेज किए गए, बेसलाइन प्रोफ़ाइल के नियमों को अपडेट किया है
- हमने दाएं से बाएं मोड में चिप के लिए, ग्रेडिएंट की दिशा को ठीक कर दिया है. पहले यह ऊपर बाईं ओर से नीचे दाईं ओर था, अब यह ऊपर दाईं ओर से नीचे बाईं ओर है. (Ic2e77)
- हमने
Chip/ToggleChip/Cardके लिए डिफ़ॉल्ट ग्रेडिएंट अपडेट किए हैं, ताकि उन्हें यूज़र एक्सपीरियंस (यूएक्स) की नई खास बातों के मुताबिक बनाया जा सके.ChipDefaults.gradientBackgroundChipColorsको अपडेट किया गया है. अब यह 32.5% के बजाय 50% प्राइमरी से शुरू होगा.CardDefaults.cardBackgroundPainterको अपडेट कर दिया गया है. अब यह प्राइमरी रंग के 30% से शुरू होकरonSurfaceVariantके 20% पर खत्म होता है. पहले यहonSurfaceVariantके 20% से शुरू होकर 10% पर खत्म होता था.ToggleChip.toggleChipColorsमें बदलाव किया गया है. अब यह 75% सरफेस से 32.5% प्राइमरी से 0% सरफेस से 50% प्राइमरी के लीनियर ग्रेडिएंट में बदल गया है. (I43bbd) - हमने
Chip/ToggleChipsके पीछे बैकग्राउंड का रंग (MaterialTheme.color.surface) जोड़ा है. ऐसा इसलिए किया गया है, ताकि अगर इनके पीछे हल्के रंग का इस्तेमाल किया जाता है, तो ये ठीक से दिखें. (Ibe1a4, b/235937657) - अब पिकर आइटम हमेशा बीच में अलाइन होते हैं. इससे उस बग को ठीक किया गया है जिसमें
gradientRatioको शून्य पर सेट करने से अलाइनमेंट बदल जाता था. (I712b8)
वर्शन 1.0
वर्शन 1.0.2
7 सितंबर, 2022
androidx.wear.compose:compose-foundation:1.0.2, androidx.wear.compose:compose-material:1.0.2, और androidx.wear.compose:compose-navigation:1.0.2 रिलीज़ किए गए हैं. वर्शन 1.0.2 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- हमने Scaffold में, पोज़िशन और पेज इंडिकेटर के z-ऑर्डर को ठीक कर दिया है. ये इंडिकेटर अब विनेट के ऊपर दिखेंगे. इसलिए, अगर विनेट मौजूद है, तो ये इंडिकेटर उससे नहीं छिपेंगे. (Ib988f, b/244207528)
वर्शन 1.0.1
24 अगस्त, 2022
androidx.wear.compose:compose-foundation:1.0.1, androidx.wear.compose:compose-material:1.0.1, और androidx.wear.compose:compose-navigation:1.0.1 रिलीज़ किए गए हैं. वर्शन 1.0.1 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
ScalingLazyColumnमें लॉजिक से जुड़ी एक गड़बड़ी को ठीक किया गया है. इसकी वजह से, सूची में कम आइटम (आम तौर पर सिर्फ़ दो) वाली सूचियां, शुरू नहीं हो पाती थीं और इस वजह से वे पारदर्शी हो जाती थीं. (076c61)
वर्शन 1.0.0
27 जुलाई, 2022
androidx.wear.compose:compose-foundation:1.0.0, androidx.wear.compose:compose-material:1.0.0, और androidx.wear.compose:compose-navigation:1.0.0 रिलीज़ किए गए हैं. वर्शन 1.0.0 में ये बदलाव शामिल हैं.
1.0.0 वर्शन की मुख्य सुविधाएं
- यह Compose for Wear OS का पहला स्टेबल वर्शन है (ज़्यादा जानें).
- Compose for Wear OS, Compose की मुख्य लाइब्रेरी पर आधारित है. यह पहने जाने वाले डिवाइसों के लिए, खास कॉम्पोनेंट उपलब्ध कराता है. साथ ही, यह पहने जाने वाले डिवाइसों के हिसाब से, Compose के मुख्य कॉम्पोनेंट के वैकल्पिक वर्शन भी उपलब्ध कराता है.
- Wear Compose में मौजूद मुख्य कॉम्पोनेंट की सूची देखने के लिए, (Compose for Wear OS Beta01) के लिए रिलीज़ नोट देखें.
गड़बड़ियां ठीक की गईं
- हमने डायलॉग को दिखाने/छिपाने के दौरान विगनेट की दृश्यता को ऐनिमेट किया है, ताकि यह मौजूदा स्केलिंग ऐनिमेशन के साथ काम कर सके. (Ida33e)
- हमने एक गड़बड़ी को ठीक किया है. इस गड़बड़ी में, स्क्रोल करते समय कुछ फ़्लिंग व्यवहार के साथ शून्य से भाग देने की समस्या हो सकती थी. (I86cb6)
ChipDefaults.childChipColor()में मौजूद एक बग को ठीक किया गया है, ताकि यह पक्का किया जा सके कि बैकग्राउंड का रंग पूरी तरह से पारदर्शी हो. (I2b3c3, b/238057342)
वर्शन 1.0.0-rc02
22 जून, 2022
androidx.wear.compose:compose-foundation:1.0.0-rc02, androidx.wear.compose:compose-material:1.0.0-rc02, और androidx.wear.compose:compose-navigation:1.0.0-rc02 रिलीज़ किए गए हैं. वर्शन 1.0.0-rc02 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- हमने दाईं से बाईं ओर (आरटीएल) मोड में कार्ड के लिए, ग्रेडिएंट की दिशा को ठीक कर दिया है. यह पहले ऊपर बाईं ओर से नीचे दाईं ओर था. अब यह ऊपर दाईं ओर से नीचे बाईं ओर है. (Ic2e77)
- हमने
Chip/ToggleChip/Cardके लिए डिफ़ॉल्ट ग्रेडिएंट अपडेट किए हैं, ताकि उन्हें यूज़र एक्सपीरियंस (यूएक्स) की नई खास बातों के मुताबिक बनाया जा सके.ChipDefaults.gradientBackgroundChipColorsको अपडेट किया गया है. अब यह 32.5% के बजाय 50% प्राइमरी से शुरू होगा.CardDefaults.cardBackgroundPainterको अपडेट किया गया है. अब यह प्राइमरी कलर के 30% से शुरू होकरonSurfaceVariantके 20% पर खत्म होता है. इससे पहले, यह SurfaceVariant पर 20% से 10% तक होता था.ToggleChip.toggleChipColorsमें, 75% सतह से 32.5% प्राइमरी से 0% सतह से 50% प्राइमरी तक लीनियर ग्रेडिएंट बदलता है. (I43bbd) - हमने
Chip/ToggleChipsके पीछे बैकग्राउंड का रंग (MaterialTheme.color.surface) जोड़ा है. ऐसा इसलिए किया गया है, ताकि अगर इनके पीछे हल्के रंग का इस्तेमाल किया जाता है, तो ये ठीक से दिखें. (Ibe1a4, b/235937657) - हमने Wear Compose लाइब्रेरी (I9c694) के साथ पैकेज किए गए, बेसलाइन प्रोफ़ाइल के नियमों को अपडेट किया है
वर्शन 1.0.0-rc01
15 जून, 2022
androidx.wear.compose:compose-foundation:1.0.0-rc01, androidx.wear.compose:compose-material:1.0.0-rc01, और androidx.wear.compose:compose-navigation:1.0.0-rc01 रिलीज़ किए गए हैं. वर्शन 1.0.0-rc01 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- Compose लाइब्रेरी में इंटरफ़ेस अब jdk8 के डिफ़ॉल्ट इंटरफ़ेस के तरीकों (I5bcf1) का इस्तेमाल करके बनाए जाते हैं
गड़बड़ियां ठीक की गईं
- हमने सूची के हेडर से
fillMaxWidth()को हटाने के लिए साफ़ तौर पर कॉल किया है, क्योंकि इसकी ज़रूरत नहीं है. साथ ही, अगर किसीScalinglazyColumnमेंListHeader()औरChip()कॉम्पोनेंट का मिक्सचर है, तो इससे समस्याएं हो सकती हैं. ऐसा इसलिए, क्योंकिListHeaderआइटम को स्क्रोल करने पर, चौड़ाई बढ़ती/घटती रहेगी. (I37144, b/235074035) - हमने
ScalingLazyColumnमें मौजूद एक बग को ठीक कर दिया है. इस बग की वजह से, सूची के आइटम तब तक सही तरीके से नहीं दिखते थे, जब तक उन्हें स्क्रोल नहीं किया जाता था. ऐसा तब होता था, जब सूची का पहला आइटम काफ़ी बड़ा होता था (पैडिंग के साथ) (Ic6159, b/234328517) - हमने
ScalingLazyColumnईज़िंग में थोड़ा बदलाव किया है, ताकि आइटम स्क्रीन के किनारे पर पहुंचने पर, उपयोगकर्ता अनुभव से जुड़ी खास बातों के अपडेट से मेल खा सकें. पुरानी वैल्यूCubicBezierEasing(0.25f, 0.00f, 0.75f, 1.00f)-> नई वैल्यूCubicBezierEasing(0.3f, 0f, 0.7f, 1f). अगर आपको पुराने वर्शन की तरह ही काम करना है, तोscalingParamsकेScalingLazyColumn(Ie375c) को बदलें - हमने
CompactChipमें पैडिंग जोड़ी है, ताकि यह पक्का किया जा सके कि इसका टैप टारगेट साइज़ कम से कम 48.dp हो. इससे, सुलभता के लिए मटीरियल डिज़ाइन के दिशा-निर्देशों का पालन किया जा सकेगा. इससे,CompactChipsका इस्तेमाल करने वाले आपके किसी भी लेआउट पर असर पड़ सकता है, क्योंकि वे ज़्यादा जगह लेंगे. (I3d57c)
वर्शन 1.0.0-beta03
1 जून, 2022
androidx.wear.compose:compose-foundation:1.0.0-beta03, androidx.wear.compose:compose-material:1.0.0-beta03, और androidx.wear.compose:compose-navigation:1.0.0-beta03 रिलीज़ किए गए हैं. वर्शन 1.0.0-beta03 में ये बदलाव शामिल हैं.
नई सुविधाएं
- हमने कंपोज़
@Previewमोड मेंScalingLazyColumnसुविधा को चालू कर दिया है. (I3b3b6, b/232947354)
एपीआई में हुए बदलाव
- हमने
ScalingLazyColumn.horizontalAlignmentप्रॉपर्टी की डिफ़ॉल्ट वैल्यू को Start से बदलकरCenterHorizontallyकर दिया है. इससे यह पक्का किया जा सकेगा कि जब सूची के आइटम, कॉलम की पूरी चौड़ाई में नहीं दिखते हैं, तो उन्हें ज़्यादा से ज़्यादा दिखने के लिए अलाइन किया जाएगा. पिछले वर्शन के व्यवहार के सेट पर वापस जाने के लिएhorizontalAlignment = Alignment.Start.(I9ed4b)
मौजूदा समस्याएं
- CompactChip की टैप/टच करने की ऊंचाई, सुलभता के लिए मटीरियल डिज़ाइन के दिशा-निर्देशों के मुताबिक नहीं है. इसे अगले वर्शन (15 जून) में ठीक कर दिया जाएगा. अगर CompactChip का इस्तेमाल किया जा रहा है, तो इससे आपके लेआउट पर असर पड़ेगा. ऐसा इसलिए, क्योंकि अब CompactChip के ऊपर और नीचे अतिरिक्त पैडिंग होगी. कृपया अपने लेआउट में बदलाव करें और उनकी जांच करें. इसके अलावा, मौजूदा व्यवहार का इस्तेमाल करने के लिए, गड़बड़ी से जुड़ी टिप्पणियां देखें. (b/234332135)
गड़बड़ियां ठीक की गईं
TimeTextपर, टेक्स्ट को ऐनिमेट करके जोड़ने या हटाने का नया डेमो. (I16d75)HorizontalPageIndicator.PagesState(I64ed0) के लिए टेस्ट जोड़ें- UX स्पेसिफ़िकेशन (Ib7ea1) के हिसाब से
TimeTextको अपडेट किया जा रहा है
वर्शन 1.0.0-beta02
18 मई, 2022
androidx.wear.compose:compose-foundation:1.0.0-beta02, androidx.wear.compose:compose-material:1.0.0-beta02, और androidx.wear.compose:compose-navigation:1.0.0-beta02 रिलीज़ किए गए हैं. वर्शन 1.0.0-beta02 में ये बदलाव शामिल हैं.
नई सुविधाएं
- अब पिकर, स्क्रोल इवेंट का हमेशा जवाब देता है. भले ही, वह सिर्फ़ पढ़ने के लिए उपलब्ध हो. इससे उपयोगकर्ताओं को स्क्रोल करने से पहले, टैप करके पिकर चुनने की ज़रूरत नहीं पड़ती. सिर्फ़ पढ़ने वाले मोड में,
gradientColorमें मौजूदा समय में चुने गए विकल्प के अलावा अन्य विकल्पों को शिम से छिपा दिया जाता है. (I72925) - हमने
Chip/ToggleChip/CompactChip/SplitToggleChipके यूज़र एक्सपीरियंस (यूएक्स) के व्यवहार में बदलाव किया है, ताकि वे डिफ़ॉल्ट रूप सेfillMaxWidthन कर सकें. इसके बजाय, वे अपने कॉन्टेंट के हिसाब से बड़े हो जाएंगे. पिछला तरीका इस्तेमाल करने के लिए, बसmodifier = Modifier.fillMaxWidth()(I60a2c, b/232206371) जोड़ें
गड़बड़ियां ठीक की गईं
CurvedTextStyleकंस्ट्रक्टर अबTextStyleको भी ध्यान में रखता है.fontWeight(इसे आने वाले समय में, API के कंस्ट्रक्टर और कॉपी करने के तरीकों में जोड़ा जा सकता है) (Ieebb9)- स्क्रीन के किनारे से स्वाइप करने की सुविधा में सुधार किए गए हैं. जब
Modifier.edgeSwipeToDismissका इस्तेमाल किया जाता है और किनारे वाले हिस्से से बाईं ओर स्वाइप करने की सुविधा चालू होती है, तो स्वाइप करने की दिशा दाईं ओर बदलने पर, स्वाइप करके खारिज करने की सुविधा चालू नहीं होती. पहले, बाईं ओर स्वाइप करने के बाद दाईं ओर स्वाइप करके, खारिज करने के लिए स्वाइप करने की सुविधा को ट्रिगर किया जा सकता था.(I916ea) HorizontalPageIndicatorअब स्क्रीन पर छह पेज तक दिखाता है. अगर कुल छह से ज़्यादा पेज हैं, तो बाईं या दाईं ओर आधा साइज़ वाला इंडिकेटर दिखता है. साथ ही, पेजों के बीच आसानी से ट्रांज़िशन होता है.(I2ac29)ScalingLazyColumnऔरPickerपर स्नैप करने के डिफ़ॉल्ट तरीके को बेहतर बनाया गया (I49539)- स्क्रीन के किनारे से स्वाइप करने की सुविधा में सुधार किए गए हैं.
Modifier.edgeSwipeToDismissका इस्तेमाल करने पर, खारिज करने के लिए स्वाइप करने की सुविधा सिर्फ़ तब ट्रिगर होती है, जब पहली बार स्क्रीन के किनारे पर टच किया जाता है और दाईं ओर स्वाइप किया जाता है. इससे पहले, स्क्रोल के शुरू होने पर स्क्रीन के किसी भी हिस्से से स्वाइप करके, खारिज करने के लिए स्वाइप करने की सुविधा को ट्रिगर किया जा सकता था.(I8ca2a)
वर्शन 1.0.0-beta01
11 मई, 2022
androidx.wear.compose:compose-foundation:1.0.0-beta01, androidx.wear.compose:compose-material:1.0.0-beta01, और androidx.wear.compose:compose-navigation:1.0.0-beta01 रिलीज़ किए गए हैं. वर्शन 1.0.0-beta01 में ये बदलाव शामिल हैं.
Compose for Wear OS 1.0 में क्या-क्या शामिल है
Compose for Wear OS का 1.0.0-beta01 वर्शन, एक अहम पड़ाव है. ऐसा इसलिए, क्योंकि इस लाइब्रेरी में सभी सुविधाएं मौजूद हैं और एपीआई लॉक है.
Wear Compose Material के 1.0 वर्शन में ये कॉम्पोनेंट शामिल हैं:
- मटीरियल थीम - इसका इस्तेमाल Compose for Mobile
MaterialThemeके विकल्प के तौर पर किया जाता है. यह Wearables पर कॉम्पोनेंट बनाने के लिए रंग, आकार, और टाइपोग्राफ़ी उपलब्ध कराता है. ये कॉम्पोनेंट, Wear Material Design के UX दिशा-निर्देशों को लागू करते हैं. Button,CompactButton, औरToggleButton- बटन में आइकॉन, इमेज या छोटे टेक्स्ट (ज़्यादा से ज़्यादा तीन वर्ण) के लिए एक ही स्लॉट होता है. यह गोल आकार में होता है. इसमें डिफ़ॉल्ट, बड़े या छोटे बटन के लिए सुझाए गए साइज़ होते हैं.CompactButtonमें किसी भी कॉन्टेंट (आइकॉन, इमेज या टेक्स्ट) को रखने के लिए एक ही स्लॉट होता है. यह गोल आकार का होता है और इसका बैकग्राउंड साइज़ बहुत छोटा होता है.CompactButtonमें बैकग्राउंड के चारों ओर पारदर्शी पैडिंग होती है. इससे क्लिक किए जा सकने वाले हिस्से का साइज़ बढ़ जाता है.ToggleButtonएक बटन है, जिसमें किसी भी कॉन्टेंट (छोटा टेक्स्ट, आइकॉन या इमेज) को रखने के लिए एक ही स्लॉट होता है. इसमें चालू/बंद (सही का निशान लगा है/सही का निशान नहीं लगा है) की स्थितियां होती हैं. साथ ही, इसमें रंग और अलग-अलग आइकॉन होते हैं, ताकि यह दिखाया जा सके कि इसे चुना गया है या नहीं- कार्ड - इनका इस्तेमाल, ऐप्लिकेशन के बारे में जानकारी दिखाने के लिए किया जाता है. जैसे, सूचनाएं.
AppCardऔरTitleCardकी मदद से, अलग-अलग लेआउट और इमेज को कार्ड के कॉन्टेंट या बैकग्राउंड के तौर पर इस्तेमाल किया जा सकता है. - चिप - ये स्टेडियम के आकार के कॉम्पोनेंट होते हैं. ये बटन की तरह होते हैं, लेकिन इनका साइज़ बड़ा होता है. इनमें कई स्लॉट होते हैं, ताकि लेबल, सेकंडरी लेबल, और आइकॉन जोड़े जा सकें. अलग-अलग साइज़ में और बैकग्राउंड के तौर पर इमेज इस्तेमाल करने की सुविधा के साथ.
- ToggleChips और SplitToggleChips - यह एक ऐसा चिप होता है जिसे चेक/अनचेक किया जा सकता है. साथ ही, इसमें
ToggleControlस्लॉट जोड़ा जाता है, ताकि कॉम्पोनेंट के चेक किए गए स्टेटस को दिखाने के लिए, स्विच या रेडियो बटन जैसे आइकॉन दिखाए जा सकें. इसके अलावा,SplitToggleChipमें टैप करने के लिए दो जगहें होती हैं. इनमें से एक पर क्लिक किया जा सकता है और दूसरी को टॉगल किया जा सकता है. - CircularProgressIndicator - Wear Material में, दो तरह के प्रोग्रेस इंडिकेटर होते हैं. पहले विकल्प में, किसी टास्क के पूरा होने का अनुपात दिखाया जाता है. साथ ही, इसमें शुरू और खत्म होने के ऐंगल के बीच के अंतर को दिखाया जाता है. दूसरे इंडिकेटर से पता चलता है कि इंतज़ार करने की तय अवधि के दौरान, प्रोग्रेस का प्रतिशत नहीं दिखता.
- curvedText - यह
curvedRowऔरcurvedColumnके साथ मिलकर,CurvedLayoutsके बारे में बताने के लिए डीएसएल का हिस्सा बनता है. इसका इस्तेमाल, गोल डिवाइसों के चारों ओर कॉम्पोनेंट को लेआउट करने के लिए किया जाता है.CurvedLayoutऔरCurvedModifierके बारे में ज़्यादा जानकारी के लिए, यहां Wear Component Foundation देखें. यह नॉन-कर्व्ड दुनिया में मॉडिफ़ायर की तरह काम करता है. इससे लेआउट, पैडिंग, ग्रेडिएंट वगैरह के अलग-अलग पहलुओं को कॉन्फ़िगर किया जा सकता है. - डायलॉग, सूचना, और पुष्टि - डायलॉग, फ़ुल-स्क्रीन डायलॉग दिखाता है. यह किसी भी अन्य कॉन्टेंट के ऊपर लेयर किया जाता है. इसमें स्वाइप करके खारिज करने की सुविधा काम करती है. यह एक ही स्लॉट लेता है. इसमें Wear Material डायलॉग का कॉन्टेंट शामिल होता है. जैसे, सूचना या पुष्टि. सूचना, डायलॉग कॉन्टेंट के बारे में राय देने वाली होती है. इसमें आइकॉन, टाइटल, और मैसेज के लिए स्लॉट होते हैं. इसमें दो नेगेटिव और पॉज़िटिव बटन होते हैं, जो एक-दूसरे के बगल में दिखते हैं. इसके अलावा, इसमें एक या उससे ज़्यादा वर्टिकल स्टैक किए गए चिप के लिए स्लॉट होता है. पुष्टि करने वाला डायलॉग, राय पर आधारित होता है. इसमें एक मैसेज तय समय के लिए दिखता है. इसमें आइकॉन या इमेज के लिए एक स्लॉट होता है. इसे ऐनिमेट किया जा सकता है.
- HorizontalPageIndicator - यह Wearable डिवाइस के नाप या आकार के हिसाब से, पेज की हॉरिज़ॉन्टल पोज़िशन दिखाता है. इसे फ़ुल स्क्रीन पर दिखाने के लिए डिज़ाइन किया गया है. साथ ही, यह गोल डिवाइसों पर घुमावदार इंडिकेटर दिखाता है. इसका इस्तेमाल, कंपैनियन पेज व्यूअर के साथ किया जा सकता है.
- आइकॉन - यह Wear में आइकॉन को लागू करने का तरीका है. यह Wear की मटीरियल थीम से रंग और ऐल्फ़ा लेता है. क्लिक किए जा सकने वाले आइकॉन के लिए, बटन या चिप देखें.
- चुनने वाला कंट्रोल - यह आइटम की स्क्रोल की जा सकने वाली सूची दिखाता है. इस सूची से आइटम चुने जा सकते हैं. डिफ़ॉल्ट रूप से, आइटम दोनों दिशाओं में ‘हमेशा’ दोहराए जाएंगे. सिर्फ़ पढ़ने वाले मोड में दिखाया जा सकता है, ताकि चुने नहीं गए विकल्पों को छिपाया जा सके.
- PositionIndicator - यह Wearable डिवाइस के फ़ॉर्म फ़ैक्टर के हिसाब से, स्क्रोल करने की पोज़िशन या पोज़िशन से जुड़ी अन्य जानकारी दिखाता है. इसे फ़ुल स्क्रीन पर दिखाने के लिए डिज़ाइन किया गया है. साथ ही, यह गोल डिवाइसों पर घुमावदार इंडिकेटर दिखाता है.
- Scaffold - Wear Material Design के विज़ुअल लेआउट स्ट्रक्चर को लागू करता है. यह कॉम्पोनेंट, स्क्रीन बनाने के लिए कई Wear Material कॉम्पोनेंट (जैसे कि
TimeText,PositionIndicator, औरVignette) को एक साथ रखने के लिए एक एपीआई उपलब्ध कराता है. साथ ही, यह पक्का करता है कि उनके लिए लेआउट की सही रणनीति अपनाई गई हो. इसके अलावा, यह ज़रूरी डेटा इकट्ठा करता है, ताकि ये कॉम्पोनेंट एक साथ सही तरीके से काम कर सकें. - ScalingLazyColumn - यह स्क्रोल करने की सुविधा वाला ऐसा कॉम्पोनेंट है जिसमें फ़िशआई इफ़ेक्ट दिखता है. यह Wear Material Design की भाषा का एक अहम हिस्सा है. इससे कॉन्टेंट आइटम को स्केल करने और उन्हें पारदर्शी बनाने में मदद मिलती है.
ScalingLazyColumnको इस तरह से डिज़ाइन किया गया है कि यह कॉन्टेंट आइटम की बड़ी संख्या को मैनेज कर सके. इन आइटम को सिर्फ़ तब दिखाया जाता है, जब इनकी ज़रूरत होती है. - स्लाइडर - इससे उपयोगकर्ता, वैल्यू की किसी रेंज में से कोई वैल्यू चुन सकते हैं. चुने गए विकल्पों की रेंज को बार के तौर पर दिखाया जाता है. इसे चाहें, तो सेपरेटर के साथ भी दिखाया जा सकता है.
- स्टेपलर - यह एक फ़ुल-स्क्रीन कॉम्पोनेंट है. इसकी मदद से उपयोगकर्ता, वैल्यू की किसी रेंज में से कोई वैल्यू चुन सकते हैं. इसके लिए, उन्हें स्क्रीन पर सबसे ऊपर और सबसे नीचे मौजूद, वैल्यू बढ़ाने/घटाने वाले बटन का इस्तेमाल करना होगा. साथ ही, स्क्रीन के बीच में मौजूद स्लॉट में टेक्स्ट या चिप डालनी होगी.
- SwipeToDismissBox - यह स्वाइप करके खारिज करने के जेस्चर को हैंडल करता है. यह बैकग्राउंड और फ़ोरग्राउंड कॉन्टेंट के लिए एक ही स्लॉट लेता है. बैकग्राउंड सिर्फ़ स्वाइप करने के दौरान दिखता है. इसे
SwipeDismissableNavHostका इस्तेमाल करके, androidx नेविगेशन लाइब्रेरी के साथ जोड़ा जा सकता है. हालांकि, ऐसा करना ज़रूरी नहीं है. इसके बारे में ज़्यादा जानने के लिए, नीचे Wear Compose Navigation लाइब्रेरी देखें. - टेक्स्ट - यह Compose Material Text कॉम्पोनेंट का Wear वर्शन है. यह Wear Material Theme से रंग और ऐल्फ़ा लेता है
- TimeText - यह कॉम्पोनेंट, स्क्रीन पर सबसे ऊपर समय और ऐप्लिकेशन का स्टेटस दिखाता है. गोल स्क्रीन पर घुमावदार टेक्स्ट का इस्तेमाल करके, स्क्रीन के आकार के हिसाब से अडजस्ट हो जाता है.
विनेट - यह Scaffold में इस्तेमाल होने वाला स्क्रीन ट्रीटमेंट है. जब स्क्रोल किए जा सकने वाले कॉन्टेंट का इस्तेमाल किया जाता है, तब यह स्क्रीन के सबसे ऊपर और सबसे नीचे के हिस्से को धुंधला कर देता है.
Wear Compose Foundation से ये कॉम्पोनेंट भी शामिल किए गए हैं:
CurvedLayout - Wear Foundation
CurvedLayoutएक लेआउट कंपोज़ेबल है. यह अपने चाइल्ड को एक आर्क में रखता है और ज़रूरत के हिसाब से उन्हें घुमाता है. यह ऐनुलस के सेगमेंट में घुमाए गए लाइन लेआउट जैसा होता है. ध्यान दें किCurvedLayoutका कॉन्टेंट, कंपोज़ेबल लैम्डा नहीं है. इसके बजाय, यह डीएसएल (डोमेन के हिसाब से भाषा) है. CurvedLayout के डीएसएल में मौजूद सभी एलिमेंट,CurvedModifierसे बनाए गए मॉडिफ़ायर पैरामीटर के साथ काम करते हैं. हालांकि, यह पैरामीटर ज़रूरी नहीं होता.basicCurvedText - यह
CurvedLayoutडीएसएल में मौजूद एक एलिमेंट है.basicCurvedTextकी मदद से डेवलपर, सर्कल के घुमाव के हिसाब से आसानी से घुमावदार टेक्स्ट लिख सकते हैं. आम तौर पर, यह टेक्स्ट गोल स्क्रीन के किनारे पर लिखा जाता है.basicCurvedTextको सिर्फ़CurvedLayoutमें बनाया जा सकता है, ताकि आपको बेहतर अनुभव मिल सके. जैसे,CurvedModifiersका इस्तेमाल करके, विज्ञापन की पोज़िशन तय करना. ध्यान दें कि ज़्यादातर मामलों में curvedText का इस्तेमाल किया जाना चाहिए, क्योंकि यह Material theming का इस्तेमाल करता है.curvedComposable - यह सामान्य कंपोज़ेबल कॉन्टेंट को रैप करता है, ताकि इसे
CurvedLayoutके साथ इस्तेमाल किया जा सके. अगरcurvedComposableमें कई एलिमेंट हैं, तो उन्हें एक-दूसरे के ऊपर ड्रॉ किया जाएगा (जैसे कि बॉक्स). कई कंपोज़ेबल को कर्व के साथ रखने के लिए, हर कंपोज़ेबल कोcurvedComposableसे रैप करें.curvedRow और curvedColumn - ये Row और Column की तरह ही होते हैं.
curvedRowऔरcurvedColumnकोCurvedLayoutमें नेस्ट किया जा सकता है, ताकि एलिमेंट को ज़रूरत के हिसाब से लेआउट किया जा सके.curvedRowके लिए, एंगुलर लेआउट की दिशा और रेडियल अलाइनमेंट तय किया जा सकता है.curvedColumnके लिए, ऐंगल के हिसाब से अलाइनमेंट और रेडियल दिशा तय की जा सकती है.CurvedModifier - सभी कर्व कॉम्पोनेंट, modifier पैरामीटर स्वीकार करते हैं. इसे
CurvedModifierका इस्तेमाल करके बनाया जा सकता है: बैकग्राउंड, साइज़, वेट, और पैडिंग काम करती हैं.Wear Compose Navigation में यह कॉम्पोनेंट भी शामिल है:
SwipeDismissableNavHost - यह Compose हैरारकी में एक जगह उपलब्ध कराता है, ताकि नेविगेशन हो सके. इसमें स्वाइप करने के जेस्चर से पीछे जाने की सुविधा मिलती है. कॉन्टेंट को
SwipeToDismissBoxमें दिखाया जाता है. इससे मौजूदा नेविगेशन लेवल का पता चलता है. स्वाइप करके खारिज करने के दौरान, पिछली नेविगेशन लेवल (अगर कोई हो) को बैकग्राउंड में दिखाया जाता है.क्या-क्या डिलीवर किया गया है, इस बारे में ज़्यादा जानने के लिए, ऐल्फ़ा वर्शन के अलग-अलग रिलीज़ नोट देखें.
एपीआई में हुए बदलाव
CurvedModifier.padding*फ़ंक्शन जोड़े गए. इनका इस्तेमाल, घुमावदार कॉम्पोनेंट के चारों ओर जोड़े जाने वाले अतिरिक्त स्पेस के बारे में बताने के लिए किया जाता है. (I4dbb4)CompositionLocalइंटरनल क्लास (I42490) को हटाया गया- हमने
Button,CompactButton, औरToggleButtonआइकॉन के साइज़ के लिए, तय की गई वैल्यू जोड़ी हैं. ये वैल्यू, दिशा-निर्देश के तौर पर दी गई हैं (I57cab) AppCardऔरTitleCardमें enabled पैरामीटर जोड़ें. अब उनके पासandroidx.compose.materialकार्ड की तरह ही एपीआई है. इस पैरामीटर को 'गलत है' पर सेट करने पर, कार्ड पर क्लिक नहीं किया जा सकेगा. (Idc48d, b/228869805)
गड़बड़ियां ठीक की गईं
- अब कम/ज़्यादा की सीमाएं पूरी होने पर, स्टेपर में घटाने और बढ़ाने वाले बटन बंद हो जाते हैं. साथ ही, iconColor पर ContentAlpha.disabled लागू होता है (I4be9f)
- हमने पिकर के कॉन्टेंट के चारों ओर 1dp पैडिंग जोड़ी है, ताकि स्वाइप करते समय दिखने वाले टेक्स्ट में झिलमिलाहट न हो. (I0b7b9)
PositionIndicator(I5e8bc) के लिए स्क्रीनशॉट टेस्ट जोड़ेंAppCardऔरTitleCardके लिए और टेस्ट जोड़े गए (I85391, b/228869805)
वर्शन 1.0.0-alpha21
20 अप्रैल, 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha21, androidx.wear.compose:compose-material:1.0.0-alpha21, और androidx.wear.compose:compose-navigation:1.0.0-alpha21 रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha21 में ये बदलाव शामिल हैं.
नई सुविधाएं
- घुमावदार एलिमेंट के बैकग्राउंड के बारे में बताने के लिए, नए घुमावदार मॉडिफ़ायर जोड़े गए हैं:
CurvedModifier.background,.radialGradientBackground, और.angularGradientBackground(I8f392) - इससे घुमावदार टेक्स्ट के ओवरफ़्लो मोड (क्लिप/एललिप्सिस/दिखने वाला) को सेट करने की अनुमति मिलती है. (I8e7aa)
CurvedModifier.weightमॉडिफ़ायर जोड़ा गया है. यह Compose में मौजूद मॉडिफ़ायर की तरह ही है. इसका इस्तेमाल, curvedRow और CurvedLayout के बच्चों (चौड़ाई के लिए) और curvedColumn के बच्चों (ऊंचाई के लिए) पर किया जा सकता है. (I8abbd)- घुमावदार एलिमेंट का साइज़ तय करने के लिए,
CurvedModifier.size,.angularSize, और.radialSizeमॉडिफ़ायर जोड़े गए. (I623c7)
एपीआई में हुए बदलाव
- Wear Compose API (I43208) में, पैरामीटर के क्रम में बदलाव किया गया है, ताकि यह पक्का किया जा सके कि बैकग्राउंड का रंग, रंग से पहले हो
- नई क्लास में, घड़ी की सुई की दिशा में घूमने और
insideOutपैरामीटर हटा दिए गए हैं. इनकी जगह ज़्यादा जानकारी देने वाले कॉन्स्टेंट का इस्तेमाल किया गया है. अब घुमावदार लेआउट की दिशा के बारे मेंLayoutDirectionको पता चल सकता है. अगर इसे तय नहीं किया जाता है, तो यह इनहेरिट हो जाता है (If0e6a) - हमने
ScalingLazyColumnके एपीआई से जुड़ी समस्या को ठीक करने के लिए,autoCenter: BooleanकोautoCenter: AutoCentringParamsसे बदल दिया है. (Ia9c90) - हमने पूरे एपीआई (चिप/टॉगलचिप/डायलॉग/स्लाइडर/स्टेपपर/...) में
iconTintColorऔरtoggleControlTintColorका नाम बदलकरiconColorऔरtoggleControlColorकर दिया है, क्योंकि रंग को आइकॉन/टॉगलकंट्रोल स्लॉट पर लागू किया जाता है. (Ied238) PageIndicatorStyleenum को वैल्यू क्लास (I2dc72) में फिर से लिखें- हमने अपने कंपोज़ेबल में कुछ स्लॉट में
RowScope/ColumnScope/BoxScopeजोड़ा है, ताकि डेवलपर को लेआउट के बारे में पता चल सके. इससे डेवलपर, कुछ स्लॉट कॉन्टेंट पर अतिरिक्त मॉडिफ़ायर का इस्तेमाल कर पाएंगे. साथ ही, उन्हें लेआउट के अतिरिक्त एलिमेंट देने की ज़रूरत नहीं होगी. इसके अलावा, हमने AppCard/TitleCard के रंगों में कुछ छोटे-मोटे बदलाव किए हैं, ताकिtimeColorऔरappColorडिफ़ॉल्ट रूप सेcontentColorपर सेट हो जाएं. हालांकि, ज़रूरत पड़ने पर इन सभी प्रॉपर्टी को अलग-अलग तौर पर बदला जा सकता है. (I26b59) SwipeToDismissBoxState.Companionऑब्जेक्ट को निजी बनाया गया (I39e84)InlineSliderऔरStepperके लिए पैरामीटर का क्रम ठीक करें. एपीआई के दिशा-निर्देशों (I11fec) का पालन करने के लिए, सामान्य बदलाव किया गया है- हमने
SwipeToDismissBoxStateके लिए सेवर ऑब्जेक्ट हटा दिया है, क्योंकि इसका इस्तेमाल नहीं किया गया था. (Ifb54e) - हमने
CompactChipको अपडेट किया है, ताकि इसे यूज़र एक्सपीरियंस (यूएक्स) की नई खास बातों के मुताबिक बनाया जा सके. पैडिंग को हॉरिज़ॉन्टल = 12.dp और वर्टिकल = 0.dp तक कम कर दिया गया है. लेबल के फ़ॉन्ट को बटन से बदलकर caption1 कर दिया गया है. अगर आइकॉन और लेबल, दोनों मौजूद हैं, तो आइकॉन का सुझाया गया साइज़ 20x20 पिक्सल है. सिर्फ़ आइकॉन वाले कॉम्पैक्ट चिप के लिए, आइकॉन का सुझाया गया साइज़ 24x24 पिक्सल है. सिर्फ़ आइकॉन के इस्तेमाल के मामले में, हमने यह भी पक्का किया है कि आइकॉन बीच में अलाइन हो. (Iea2be) - हमने
ScalingLazyListLayoutInfoमें कई नए फ़ील्ड जोड़े हैं, ताकि डेवलपर को यह पता चल सके किcontentPaddingऔरautoCenteringPaddingकितना लागू किया गया है. ये डेवलपर के लिए तब काम के हो सकते हैं, जब वे फ़्लिंग/स्क्रोल (I7577b) का हिसाब लगा रहे हों - हमने डायलॉग के लिए, इन/आउट ट्रांज़िशन लागू किए हैं.
showDialogपैरामीटर जोड़ा गया है. अब डायलॉग, अपनी विज़िबिलिटी को कंट्रोल करता है. इससे डायलॉग को तब इंट्रो और आउटरो ऐनिमेशन चलाने की अनुमति मिलती है, जब डायलॉग दिखाया/छिपाया जाता है. ध्यान दें कि जब उपयोगकर्ता स्वाइप करके खारिज करने की सुविधा का इस्तेमाल करके डायलॉग को बंद करता है, तब आउटरो ऐनिमेशन नहीं दिखता. हमने हाल ही में जोड़े गएSwipeToDismissBoxओवरलोड में, राज्य के लिए डिफ़ॉल्ट वैल्यू भी जोड़ी है. (I682a0) - हम i18n और a11y को बेहतर तरीके से सपोर्ट करने के लिए,
ToggleChipऔरSplitToggleChipमें बदलाव किया है. इससेtoggleControlस्लॉट के लिए अब कोई डिफ़ॉल्ट वैल्यू नहीं होगी. हमनेToggleChipDefaultsमें भी बदलाव किया है, ताकि अब ये तरीके Icon के बजाय ImageVector दिखाएं. ध्यान दें कि अब ये @Composables नहीं दिखाते हैं, इसलिए इन्हें छोटे अक्षरों से शुरू किया गया है.SwitchIcon()->switchIcon(),CheckboxIcon->checkboxIcon(), औरRadioIcon()->radioIcon()- इससे डेवलपर,contentDescriptionके सही सेट के साथ अपनेIcon()कंपोज़ेबल बना सकते हैं. (I5bb5b) - हमने
SwipeDismissableNavHostमेंSwipeDismissableNavHostStateपैरामीटर जोड़ा है. इससे नेविगेशन डेस्टिनेशन के तौर पर इस्तेमाल की जाने वाली स्क्रीन पर, किनारे से स्वाइप करने की सुविधा का इस्तेमाल किया जा सकता है. ऐसा इसलिए, क्योंकि अबSwipeToDismissBoxStateको होस्ट किया जा सकता है. साथ ही, इसका इस्तेमाल उन स्क्रीन परSwipeDismissableNavHostStateऔरModifier.edgeSwipeToDismiss, दोनों को शुरू करने के लिए किया जा सकता है जिन पर किनारे से स्वाइप करने की सुविधा की ज़रूरत होती है. (I819f5, b/228336555)
गड़बड़ियां ठीक की गईं
- पक्का करें कि ज़रूरत पड़ने पर घुमावदार लेआउट अपडेट किए गए हों. (Ie8bfa, b/229079150)
- https://issuetracker.google.com/issues/226648931 (Ia0a0a, b/226648931) में मौजूद बग को ठीक किया गया
- ज़रूरत न होने पर एक्सपेरिमेंट के लिए एनोटेशन हटाए गए (I88d7e)
वर्शन 1.0.0-alpha20
6 अप्रैल, 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha20, androidx.wear.compose:compose-material:1.0.0-alpha20, और androidx.wear.compose:compose-navigation:1.0.0-alpha20 रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha20 में ये बदलाव शामिल हैं.
नई सुविधाएं
SwipeToDismissके लिएedgeSwipeToDismissमॉडिफ़ायर जोड़ा गया. इस विकल्प से,swipeToDismissको सिर्फ़ व्यूपोर्ट के बाएं किनारे पर चालू किया जा सकता है. इस कुकी का इस्तेमाल तब किया जाता है, जब स्क्रीन के बीच वाले हिस्से में हॉरिज़ॉन्टल पेजिंग को मैनेज करना होता है. जैसे, मैप को दो डाइमेंशन में स्क्रोल करना या पेजों के बीच हॉरिज़ॉन्टल स्वाइप करना.(I3fcec, b/200699800)
एपीआई में हुए बदलाव
CurvedModifiersको लागू करने की बुनियादी सुविधा. इससे घुमावदार कॉन्टेंट को पसंद के मुताबिक बनाने के तरीके उपलब्ध कराए जा सकते हैं. हालांकि , अभी तक कोईCurvedModifiersउपलब्ध नहीं कराया गया है. साथ ही, कस्टम मॉडिफ़ायर बनाने की सुविधा बाद में उपलब्ध कराई जा सकती है (I9b8df)EdgeSwipeबेहतर तरीके से समझने के लिए, मॉडिफ़ायर के दस्तावेज़ और डिफ़ॉल्ट वैल्यू को अपडेट किया गया है .(I6d00d)- Scaffold में
PageIndicatorस्लॉट जोड़ें.PageIndicatorको सीधे तौर पर Scaffold में जोड़ने से, हम यह पक्का कर सकते हैं कि यह गोल डिवाइसों पर सही तरीके से दिखेगा. (Ia6042) InlineSliderऔर स्टेपर पैरामीटर से डिफ़ॉल्ट आइकॉन हटाएं. इससे डेवलपर को स्थानीय भाषा और ऐक्सेसिबिलिटी से जुड़ी ज़रूरी शर्तों पर ज़्यादा ध्यान देने में मदद मिलेगी. डिफ़ॉल्ट आइकॉन के इस्तेमाल के बारे में डेमो और सैंपल में दिखाया गया था. (I7e6fd)- TimeText (Iaac32) में, ट्रेलिंग और लीडिंग पैरामीटर के नामों को Start और End से बदलें
- हमने
SwipeToDismissBoxओवरलोड मेंonDismissedपैरामीटर जोड़ा है, ताकि स्वाइप जेस्चर पूरा होने पर नेविगेशन इवेंट को ट्रिगर करने के सामान्य इस्तेमाल को सपोर्ट किया जा सके. (I50353, b/226565726) TimeTextके इस्तेमाल (Ide520) सेExperimentalWearMaterialApiएनोटेशन हटा दिए गए- हमने
ScalingLazyList/Columnस्कोप और जानकारी वाले इंटरफ़ेस को सील कर दिया है, क्योंकि इन्हें बाहरी डेवलपर के लिए लागू नहीं किया गया है. इससे हमें आने वाले समय में, बाइनरी ब्रेकिंग में बदलाव किए बिना इनमें नए सदस्य जोड़ने की अनुमति मिलेगी. (I7d99f) - हमने Picker में एक नई
flingBehaviourप्रॉपर्टी औरPickerDefaults.flingBehaviour()तरीका जोड़ा है. इससे, फ़्लिंग के व्यवहार को कॉन्फ़िगर किया जा सकता है. जैसे, आरएसबी की सुविधा जोड़ना.PickerStateअबScrollableStateइंटरफ़ेस लागू करता है. (Ib89c7)
गड़बड़ियां ठीक की गईं
- Wear Compose लाइब्रेरी के लिए, Android Runtime (एआरटी) की बेसलाइन प्रोफ़ाइल के नियमों को अपडेट किया गया है. ART, डिवाइसों पर मौजूद प्रोफ़ाइल के नियमों का इस्तेमाल कर सकता है. इससे, ऐप्लिकेशन के किसी सबसेट को पहले से कंपाइल किया जा सकता है, ताकि ऐप्लिकेशन की परफ़ॉर्मेंस को बेहतर बनाया जा सके. ध्यान दें कि इससे डीबग किए जा सकने वाले ऐप्लिकेशन पर कोई असर नहीं पड़ेगा. (Iaa8ef)
- दस्तावेज़ को बेहतर बनाएं (I2c051)
वर्शन 1.0.0-alpha19
23 मार्च, 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha19, androidx.wear.compose:compose-material:1.0.0-alpha19, और androidx.wear.compose:compose-navigation:1.0.0-alpha19 रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha19 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
CurvedRowका नाम बदलकरCurvedLayoutकर दिया गया है. साथ ही, इसे डीएसएल के साथ स्कोप के तौर पर फिर से बनाया गया है. इस डीएसएल का इस्तेमाल करके, ज़्यादा जटिल कर्व वाले लेआउट तय किए जा सकते हैं. इसके लिए, नेस्ट किए गएcurvedRowऔरcurvedColumnकी सीरीज़ का इस्तेमाल किया जाता है. ये Row और Column के कर्व वाले लेआउट के बराबर होते हैं. इन लेआउट एलिमेंट में, तीन एलिमेंट का इस्तेमाल किया जा सकता है:curvedComposable(किसी भी @Composable को जोड़ने के लिए),basicCurvedText(फ़ाउंडेशन का घुमावदार टेक्स्ट), औरcurvedText(Wear के मटीरियल के हिसाब से घुमावदार टेक्स्ट). (Ib776a)PositionIndicatorके लिए साइड को कॉन्फ़िगर करने की सुविधा उपलब्ध कराएं. अब PositionIndicator की बुनियादी स्थिति को कॉन्फ़िगर किया जा सकता है. इसके लिए, ये विकल्प उपलब्ध हैं: End (लेआउट की दिशा के हिसाब से), OppositeRsb (स्क्रीन रोटेशन को ध्यान में रखता है, ताकि यह खुद को फ़िज़िकल RSB के ठीक सामने रख सके) या Left & Right. (I2f1f3)SwipeToDismissBoxके लिए, हमनेSwipeDismissTarget.Original का नाम बदलकरSwipeToDismissValue.DefaultऔरSwipeDismissTarget.Dismissalका नाम बदलकरSwipeToDismissValue.Dismissedकर दिया है. हमनेSwipeToDismissBoxDefaults.BackgroundKeyऔरSwipeToDismissBoxDefaults.ContentKeyको भी क्रमशःSwipeToDismissKeys.BackgroundऔरSwipeToDismissKeys.Contentमें ट्रांसफ़र कर दिया है. (I47a36)- हमने Picker में रीड-ओनली मोड जोड़ा है. यह उन स्क्रीन के लिए है जिनमें एक से ज़्यादा Picker मौजूद हैं और एक बार में सिर्फ़ एक Picker में बदलाव किया जा सकता है. जब पिकर सिर्फ़ पढ़ने के लिए होता है, तब यह मौजूदा समय में चुने गए विकल्प को दिखाता है. साथ ही, अगर कोई लेबल दिया गया है, तो उसे भी दिखाता है. (I879de)
SwipeToDismissBoxStateको फिर से बनाया गया है, ताकिExperimentalWearMaterialApiके स्कोप कोModifier.swipeableऔरSwipeableStateतक सीमित किया जा सके. इनका इस्तेमाल अब अंदरूनी तौर पर किया जाता है.SwipeToDismissBoxStateके पास अबcurrentValue,targetValue,isAnimationRunning, औरsnapToसदस्य हैं, ताकि सामान्य इस्तेमाल के मामलों में मदद की जा सके. अगर आपको कोई और प्रॉपर्टी उपलब्ध करानी है, तो कृपया हमें बताएं. इसके अलावा, हमनेSwipeableStateके उस व्यवहार को भी ठीक किया है जिसमें स्वाइप ऑफ़सेट, ऐंकर की राउंडिंग की गड़बड़ी के दायरे में होता है. (I58302)
गड़बड़ियां ठीक की गईं
ScalingLazyColumnके कॉन्टेंट को स्क्रोल किया जा सकता है या नहीं, यह पता लगाने के लिए आसान बनाया गया और ठीक किया गया कोड. इसका इस्तेमाल यह तय करने के लिए किया जाता है कि हम स्क्रोलबार दिखाएं या नहीं (I7bce0)- एक से ज़्यादा स्थितियों के साथ इस्तेमाल करने और उनके बीच स्विच करने पर, पोज़िशन इंडिकेटर में मौजूद गड़बड़ी को ठीक किया गया (I320b5)
- हमने Wear OS के लिए Compose की डिफ़ॉल्ट थीम के टाइपोग्राफ़ी/फ़ॉन्ट को अपडेट किया है, ताकि यह हमारे यूज़र एक्सपीरियंस से जुड़े नए दिशा-निर्देशों के मुताबिक हो. ध्यान दें कि display1 (40.sp) और display2 (34.sp) अब अपनी पिछली वैल्यू से छोटे हैं. साथ ही, लाइन की ऊंचाई और लाइन के बीच की दूरी में कई अन्य छोटे-मोटे अपडेट किए गए हैं. (Ie3077)
- हमने
SwipeToDismissBoxमें स्वाइप करने के लिए ज़्यादा जगह जोड़ी है, ताकि स्वाइप करने पर ही मोशन हो. स्वाइप करने की उल्टी दिशा में मोशन न हो. (Ifdfb9) - हमने
CircularProgressIndicatorफ़ंक्शन के लिए, डिफ़ॉल्ट पैरामीटर की कुछ वैल्यू में बदलाव किया है, ताकि उन्हें Wear Material Design के यूज़र एक्सपीरियंस (यूएक्स) से जुड़े दिशा-निर्देशों के मुताबिक बनाया जा सके. स्पिनर/इंडिटरमिनेंट वर्शन के लिए, साइज़ (40->24.dp), इंडिकेटर कलर (प्राइमरी->ऑनबैकग्राउंड), ट्रैक कलर की पारदर्शिता (30%->10%), और स्ट्रोक की चौड़ाई (4->3dp) को अपडेट किया गया है. प्रोग्रेस/डिटरमिनेट वर्शन के लिए, trackColor की ट्रांसपेरेंसी (30%->10%) को अपडेट किया गया है. (I659cc) - हमने
ScalingLazyColumnके डिफ़ॉल्ट स्केलिंग पैरामीटर को, Wear के नए Material Design UX स्पेसिफ़िकेशन के मुताबिक अपडेट कर दिया है. इससे सूची के आइटम, सूची के बीच के हिस्से के ज़्यादा करीब दिखने लगते हैं. हालांकि, सूची के किनारे पर पहले की तुलना में कम आइटम दिखते हैं. (Ica8f3) - ऐनिमेशन के आखिर में सुधार करने के लिए,
ScalingLazyColumnDefaults.snapFlingBehaviorमें कुछ बदलाव किए गए हैं (If3260)
वर्शन 1.0.0-alpha18
9 मार्च, 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha18, androidx.wear.compose:compose-material:1.0.0-alpha18, और androidx.wear.compose:compose-navigation:1.0.0-alpha18 रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha18 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- PositionIndicator में कई सुधार किए गए हैं: ShowResult का नाम बदलकर PositionIndicatorVisibility कर दिया गया है. परफ़ॉर्मेंस में कुछ सुधार किए गए हैं, ताकि जब ज़रूरत न हो, तब फिर से हिसाब न लगाया जाए (Iaed9d)
SplitToggleChipके लिए सुझाई गई कलरिंग को अपडेट कर दिया गया है. SplitToggleChip में अब चेक किए जाने या अनचेक किए जाने पर, एक ही रंग का बैकग्राउंड होता है. ToggleControl के रंग से यह पता चलता है कि कॉम्पोनेंट को चेक किया गया है या नहीं. हमने नई कलर स्कीम के साथ काम करने के लिए, एक नयाToggleDefaults.splitToggleChipColors()जोड़ा है. हमनेtoggleChipColors()के तरीकों को भी आसान बना दिया है. साथ ही, splitBackgroundOverlayColor (I7e66e) को हटा दिया है- हमने
ScalingLazyListItemInfoमें unadjustedSize को जोड़ा है, क्योंकि फ़्लोट मैथ्स की सटीक जानकारी की वजह से, स्केल किए गए साइज़ और स्केलिंग फ़ैक्टर का इस्तेमाल करके, आइटम के ओरिजनल साइज़ का हिसाब लगाना सुरक्षित नहीं है. (I54657, b/221079441) HorizontalPageIndicatorजोड़ें. इससे पेजों की कुल संख्या और चुने गए पेज के बारे में पता चलता है. यह डिवाइस के आकार के हिसाब से, सीधी या घुमावदार हो सकती है. इसमें कस्टम इंडिकेटर शेप का भी इस्तेमाल किया जा सकता है. इससे यह तय किया जाता है कि हर इंडिकेटर को विज़ुअल तौर पर कैसे दिखाया जाए. (Iac898)- हमने
PickerStateको अपडेट कर दिया है, ताकि numberOfOptions को अपडेट किया जा सके. यहDatePickerजैसे इस्तेमाल के उदाहरणों के साथ काम करता है. ऐसा तब होता है, जब चुने गए महीने के हिसाब से महीने में दिनों की संख्या बदल जाती है. PickerState के कंस्ट्रक्टर पैरामीटर को initialNumberOfOptions में बदल दिया गया है. (Iad066) - जब स्क्रोलबार हो और स्क्रोल न किया जा सके, तब
PositionIndicatorको छिपाएं. (Id0a7f) - Scaffold के साथ एक जैसा अनुभव देने के लिए, हमारे फ़ुल-स्क्रीन डायलॉग कॉम्पोनेंट में अब
PositionIndicatorऔरVignetteदिखता है. अब हमColumnके बजायScalingLazyColumnका इस्तेमाल कर रहे हैं. इसका मतलब है कि डायलॉग का कॉन्टेंट अबScalingLazyListScopeमें है. आम तौर पर, इसे आइटम { /* content */ } में शामिल करना होता है. डायलॉग, verticalArrangement पैरामीटर के साथ काम करता है. (Idea13) - हमने
ToggleChipऔरSplitToggleChiptoggleIcon प्रॉपर्टी का नाम बदलकर toggleControl कर दिया है, ताकि डिज़ाइनर और डेवलपर को एपीआई नेविगेट करने में आसानी हो. ऐसा इसलिए किया गया है, ताकि Material Design के साथ बेहतर तरीके से काम किया जा सके. (If5921, b/220129803) - हमने Wear Material Theme Typology में एक नया कैप्शन3 जोड़ा है. कैप्शन3 एक छोटा फ़ॉन्ट है. इसका इस्तेमाल कानूनी टेक्स्ट जैसे लंबे टेक्स्ट के लिए किया जाता है. (I74b13, b/220128356)
गड़बड़ियां ठीक की गईं
- जब हम उस जगह पर पहुंच जाएं, तो स्नैपिंग ऐनिमेशन बंद कर दो. (Idb69d)
- PositionIndicator में हुए बदलावों को ऐनिमेट करता है. (I94cb9)
- यूआई/यूएक्स के बारे में मिले सुझावों के आधार पर, हमने
ScalingLazyColumnautoCentering में बदलाव किया है. इससे यह पक्का किया जा सकेगा कि इंडेक्सScalingLazyListState.initialCenterItemIndexया इससे ज़्यादा वाले आइटम, व्यूपोर्ट के बीच में पूरी तरह से स्क्रोल किए जा सकें. इससे डेवलपर, आइटम के बारे में एक या दो आइटम को शुरू में सेंटर में रख सकते हैं. इन्हें बीच में स्क्रोल नहीं किया जा सकता. इसका मतलब है कि ऑटो सेंटरिंगScalingLazyColumn,initialCenterItemIndex/initialCenterItemScrollOffset(I22ee2) से ऊपर स्क्रोल नहीं कर पाएगा - हमने तारीख चुनने वाले टूल का डेमो जोड़ा है. साथ ही, हमने
PickerStateमें मौजूद एक बग को ठीक किया है. इस बग की वजह से, Picker के दिखने तक initiallySelectedOption लागू नहीं होता था. (Id0d7e) - गोल स्क्रीन पर चौड़े
ScalingLazyColumnआइटम के कटने की समस्या को कम करने के लिए, हमने कॉन्टेंट के डिफ़ॉल्ट हॉरिज़ॉन्टल पैडिंग को 8 से बढ़ाकर 10 डीपी कर दिया है. (I0d609) - पक्का करें कि स्क्रोल करते समय
PositionIndicatorदिखे. (Ied9a2)
वर्शन 1.0.0-alpha17
23 फ़रवरी, 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha17, androidx.wear.compose:compose-material:1.0.0-alpha17, और androidx.wear.compose:compose-navigation:1.0.0-alpha17 रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha17 में ये बदलाव शामिल हैं.
नई सुविधाएं
- हमने स्नैप सपोर्ट जोड़ा है, जिसका इस्तेमाल
ScalingLazyColumnके साथ किया जा सकता है. स्नैप सपोर्ट चालू करने के लिए,flingBehavior = ScalingLazyColumnDefaults.flingWithSnapBehavior(state)को सेट करें. (I068d3, b/217377069) - हमने ऐसे पिकर के डेमो जोड़े हैं जिनका इस्तेमाल 24 घंटे या 12 घंटे की घड़ी में समय चुनने के लिए किया जाता है. (Ie5552)
एपीआई में हुए बदलाव
- स्क्वेयर डिवाइस पर
TimeTextकस्टम फ़ॉन्ट और स्टाइल से जुड़ी समस्या ठीक की गई (Iea76e) ScalingLazyListLayoutInfoमें अबreverseLayout,viewportSize, और ओरिएंटेशन प्रॉपर्टी हैं. ये प्रॉपर्टी,LazyListLayoutInfo(I4f258, b/217917020) से मेल खाती हैंScalingLazyColumnके पास अबuserScrollEnabledप्रॉपर्टी है, जोLazyList(I164d0, b/217912513) से मेल खाती है- पिकर में अब डिफ़ॉल्ट रूप से ऊपर और नीचे ग्रेडिएंट होता है (Iab92a)
गड़बड़ियां ठीक की गईं
- हमने
ScalingLazyColumnमें बदलाव किया है, ताकि यह अब अपने पैरंट के पूरे स्पेस को न भरे. इसके बजाय, यह अपने कॉन्टेंट के साइज़ के हिसाब से साइज़ तय करेगा. इससे,LazyColumnके व्यवहार में एकरूपता बनी रहती है. अगर आपको पुराने वर्शन का इस्तेमाल करना है, तोScalingLazyColumn(I51bf8) कोModifier.fillMaxWidth()/width()/widthIn()पास करें - हमने
SwipeDismissableNavHost.ktमें अपवाद के मैसेज को बेहतर बनाया है. यह मैसेज तब ट्रिगर होता था, जब नेविगेशन बैकस्टैक खाली होता था. (I1b1dc)
वर्शन 1.0.0-alpha16
9 फ़रवरी, 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha16, androidx.wear.compose:compose-material:1.0.0-alpha16, और androidx.wear.compose:compose-navigation:1.0.0-alpha16 रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha16 में ये बदलाव शामिल हैं.
नई सुविधाएं
CircularProgressIndicatorजोड़ें. प्रोग्रेस इंडिकेटर से, किसी प्रोसेस की अवधि या इंतज़ार करने का समय दिखता है. अगर फ़ुल-स्क्रीन का इस्तेमाल किया जाता है, तो TimeText या अन्य कॉम्पोनेंट के लिए गैप (कटआउट) की सुविधा काम करती है. (Iab8da)
एपीआई में हुए बदलाव
- अब पिकर में
flingBehaviorपैरामीटर है. इसकी डिफ़ॉल्ट वैल्यू की वजह से, स्क्रोल/फ़्लिंग करते समय पिकर सबसे नज़दीकी विकल्प पर स्नैप हो जाते हैं. (I09000) - InlineSlider और Stepper के लिए अतिरिक्त पूर्णांक एपीआई (I1b5d6)
गड़बड़ियां ठीक की गईं
- हमने
ScalingLazyListStateके लिए, डिफ़ॉल्ट initialCenterItemIndex को 0->1 में बदल दिया है. इसका मतलब है कि अगरScalingLazyListState.rememberScalingLazyListState(initialCenterItemIndex =)का इस्तेमाल करके, स्टेट कंस्ट्रक्शन को बदला नहीं जाता है, तो दूसरी सूची का आइटम (index == 1) व्यूपोर्ट के बीच में रखा जाएगा. साथ ही, पहली सूची का आइटम (index == 0) इसके पहले रखा जाएगा. इससे, डिफ़ॉल्ट रूप से बेहतर विज़ुअल इफ़ेक्ट मिलता है, क्योंकि व्यूपोर्ट का ज़्यादातर हिस्सा सूची आइटम से भर जाता है. (I0c623, b/217344252) - हमने
ScalingLazyColumnडिफ़ॉल्टextraPaddingको कम कर दिया है, ताकि यह पक्का किया जा सके कि सूची में कई आइटम मौजूद हों. भले ही, हम उनमें से कुछ के साइज़ को 10% से घटाकर 5% कर रहे हों. इससे सूची में ऐसे आइटम नहीं जोड़े जाएंगे जो व्यूपोर्ट में नहीं दिखते. अगर non standard scalingParams का इस्तेमाल किया जा रहा है (उदाहरण के लिए, ज़्यादा एक्सट्रीम स्केलिंग), तो डेवलपरviewportVerticalOffsetResolverका इस्तेमाल करके, अतिरिक्त पैडिंग को अडजस्ट कर सकता है. (I76be4) - स्क्वेयर डिवाइस (Ibd3fb) पर, TimeText को कई लाइनों में दिखाने से जुड़ी समस्या ठीक की गई
- हमने
ScalingLazyColumnमें बदलाव किया है, ताकि यह अब अपने पैरंट के पूरे स्पेस को न भरे. इसके बजाय, यह अपने कॉन्टेंट के साइज़ के हिसाब से साइज़ तय करेगा. इससे यहLazyColumnके व्यवहार के मुताबिक काम करता है. अगर आपको पुराने वर्शन की सुविधा फिर से चालू करनी है, तोModifier.fillMaxSize()कोScalingLazyColumnपर पास करें - ध्यान दें: यह बदलाव पूरा नहीं हुआ है. इसे अगले ऐल्फ़ा वर्शन में ठीक किया जाएगा. (I3cbfa)
वर्शन 1.0.0-alpha15
26 जनवरी, 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha15, androidx.wear.compose:compose-material:1.0.0-alpha15, और androidx.wear.compose:compose-navigation:1.0.0-alpha15 रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha15 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- हमने
ScalingLazyColumnमें एक नई प्रॉपर्टीautoCenteringजोड़ी है. जब इसे सही (डिफ़ॉल्ट) पर सेट किया जाता है, तो यह पक्का हो जाता है कि पहले और आखिरी आइटम सहित सभी आइटम को स्क्रोल किया जा सकता है, ताकि वे सूचियों के व्यूपोर्ट के बीच में दिखें. ध्यान दें कि ऑटो-सेंटरिंग का इस्तेमाल करते समय, आपको वर्टिकल कॉन्टेंट पैडिंग को 0.dp पर सेट करना होगा. अगर autoCentering और vertical content padding, दोनों उपलब्ध कराए जाते हैं, तो इससे पहली और आखिरी सूची आइटम से पहले और बाद में अतिरिक्त जगह उपलब्ध होगी. इससे उन्हें और भी ज़्यादा स्क्रोल किया जा सकेगा. (I2a282, b/214922490) - हमने एक
Dialogकॉम्पोनेंट जोड़ा है. इसकी मदद से, कोई भी कंपोज़ेबल, फ़ुल स्क्रीन डायलॉग को ट्रिगर कर सकता है. यह डायलॉग, अन्य कॉन्टेंट के ऊपर दिखता है. दिखाए जाने पर, डायलॉग को स्वाइप करके खारिज किया जा सकता है. साथ ही, स्वाइप करने के दौरान, यह अपने पैरंट का कॉन्टेंट बैकग्राउंड में दिखाएगा. डायलॉग का कॉन्टेंटAlertयाConfirmation(पहले के कॉम्पोनेंटAlertDialogऔरConfirmationDialogका नाम बदलकरAlertऔरConfirmationकर दिया गया है) होना चाहिए.Alert,Confirmation, औरDialog, सभीandroidx.wear.compose.material.dialogपैकेज में हैं. सूचना और पुष्टि करने की सुविधा को नेविगेशन डेस्टिनेशन के तौर पर इस्तेमाल किया जा सकता है. इसके अलावा, ज़रूरत के मुताबिक सूचना और पुष्टि करने वाले पैरामीटर में ColumnScope जोड़ा गया है. (Ia9014) - हमने Compose for WearOS Material Theme Colors से
onSurfaceVariant2को हटा दिया है. साथ ही, लाइब्रेरी में इसके इस्तेमाल कोonSurfaceVariantसे बदल दिया है. (Icd592) - प्रोग्राम के हिसाब से
PickerStateपर कोई विकल्प चुनने का तरीका जोड़ा गया है. अबPickerStateबनाते समय, शुरू में चुना गया विकल्प भी तय किया जा सकता है. (I92bdf) - हमने
ScalingLazyColumnके फ़्लिंग के तरीके को पसंद के मुताबिक बनाने की सुविधा जोड़ी है. (I1ad2e, b/208842968) - हमने
NavController.currentBackStackEntryAsState()कोWear.Compose.Navigationलाइब्रेरी में जोड़ दिया है. (If9028, b/212739653) - रोटेटिंग साइड बटन वाले Wear डिवाइसों के लिए,
Modifier.onRotaryScrollEvent()औरModifier.onPreRotaryScrollEvent()जोड़े गए.(I18bf5, b/210748686)
वर्शन 1.0.0-alpha14
12 जनवरी, 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha14, androidx.wear.compose:compose-material:1.0.0-alpha14, और androidx.wear.compose:compose-navigation:1.0.0-alpha14 रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha14 में ये बदलाव शामिल हैं.
नई सुविधाएं
हमने
ScalingLazyListStateमें कई तरीके जोड़े हैं, ताकि डेवलपर को सूची के किसी खास आइटम पर स्क्रोल करने की सुविधा को कंट्रोल करने की अनुमति दी जा सके. साथ ही, सूची के शुरुआती आइटम और ऑफ़सेट को सेट करने की अनुमति दी जा सके.इस बदलाव के तहत, हमने ScalingLazyList में भी बदलाव किया है, ताकि यह व्यूपोर्ट की शुरुआत के बजाय, ScalingLazyList के व्यूपोर्ट के बीच में अलाइन हो.
ScalingLazyListमें एक नई प्रॉपर्टीanchorType: ScalingLazyListAnchorType = ScalingLazyListAnchorType.ItemCenterजोड़ी गई है. इससे यह कंट्रोल किया जा सकेगा कि सेंटर (ScalingLazyListAnchorType.ItemCenter) याEdge(ScalingLazyListAnchorType.ItemStart) को व्यूपोर्ट की सेंटरलाइन के साथ अलाइन किया जाना चाहिए या नहीं.इस वजह से,
ScalingLazyListItemInfo.offsetऔरScalingLazyListItemInfo.adjustedOffsetबदल गए हैं. अब ये, सूची में मौजूद आइटम की पोज़िशन और सूची केanchorTypeके हिसाब से आइटम के ऑफ़सेट को दिखाएंगे. उदाहरण के लिए, अगर किसीScalingLazyColumnकाanchorTypeItemCenterहै और सूची में मौजूद किसी आइटम को व्यूपोर्ट की सेंटरलाइन पर रखा गया है, तो ऑफ़सेट0होगा.नए तरीके
scrollTo,animatedScrollTo,centerItemIndex, औरcenterItemOffsetहैं. (I61b61)हमने
SwipeDismissableNavHostमें 'वापस जाएं' बटन हैंडलर जोड़ा है, ताकि 'वापस जाएं' बटन दबाने पर, नेविगेशन के क्रम में पिछले लेवल पर जाया जा सके. (I5b086, b/210205624)
वर्शन 1.0.0-alpha13
15 दिसंबर, 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha13, androidx.wear.compose:compose-material:1.0.0-alpha13, और androidx.wear.compose:compose-navigation:1.0.0-alpha13 रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha13 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- हमने
RangeIconsको इंटरनल (InlineSliderऔरStepperके ज़रिए इंटरनल तौर पर रेफ़र किया गया) बना दिया है. (I927ec)
गड़बड़ियां ठीक की गईं
उस समस्या को ठीक किया गया है जिसमें
SwipeDismissableNavHost, कंपोज़ करने की सुविधा की हैरारकी में डेस्टिनेशन कोCREATEDलाइफ़साइकल की स्थिति में पहुंचने से पहले ही जोड़ देता था. इससेIllegalStateExceptionकी समस्या होती थी.navigation-composeसे2.4.0-beta02और इसके बाद के वर्शन पर निर्भरता को अपडेट करने के लिए, इस समस्या को ठीक करना ज़रूरी था. (I40a2b, b/207328687)Wear Compose लाइब्रेरी में ड्रॉ किए जा सकने वाले संसाधन पाने के लिए, Drawables enum क्लास जोड़ी गई है, ताकि अब रिफ़्लेक्शन की ज़रूरत न पड़े. इस अपडेट में, उस गड़बड़ी को ठीक किया गया है जिसमें
minifyEnabled=trueयाshrinkResources=true) के दौरान लाइब्रेरी के ड्रॉएबल हटा दिए जाते थे. (Ib2a98)Wear Compose में
Stepperके लिए टेस्ट जोड़े गए (I2d03a)Wear Compose Navigation में,
SwipeDismissableNavHostके लिए सैंपल जोड़े गए. (I85f06)
वर्शन 1.0.0-alpha12
1 दिसंबर, 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha12, androidx.wear.compose:compose-material:1.0.0-alpha12, और androidx.wear.compose:compose-navigation:1.0.0-alpha12 रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha12 में ये बदलाव शामिल हैं.
नई सुविधाएं
हमने एक स्टेपर कॉम्पोनेंट जोड़ा है. इससे उपयोगकर्ता, वैल्यू की किसी रेंज में से कोई वैल्यू चुन सकते हैं. स्टेपपर, पूरी स्क्रीन पर दिखने वाला कंट्रोल होता है. इसमें सबसे ऊपर और सबसे नीचे, वैल्यू बढ़ाने और घटाने वाले बटन होते हैं. साथ ही, बीच में एक स्लॉट होता है. इसमें चिप या टेक्स्ट दिख सकता है. ज़रूरत पड़ने पर, बटन के आइकॉन को पसंद के मुताबिक बनाया जा सकता है. (I625fe)
हमने डायलॉग दिखाने के लिए, दो नए कंपोज़ेबल जोड़े हैं: AlertDialog, उपयोगकर्ता से जवाब मिलने का इंतज़ार करता है. साथ ही, यह टाइटल, आइकॉन, मैसेज दिखाता है. इसके अलावा, यह a) सकारात्मक/नकारात्मक विकल्पों के लिए दो बटन या b) ज़्यादा विकल्पों के लिए, वर्टिकल स्टैक किए गए चिप या टॉगल चिप दिखाता है, ConfirmationDialog, टाइम आउट के साथ एक सूचना दिखाता है. इस सामान्य डायलॉग में, टाइटल और (ऐनिमेशन वाला) आइकॉन के लिए स्लॉट होते हैं. (Ic2cf8)
एपीआई में हुए बदलाव
- डायलॉग की अवधि के लिए सुझाई गई वैल्यू में यूनिट (मिलीसेकंड) जोड़ें. (I09b48)
वर्शन 1.0.0-alpha11
17 नवंबर, 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha11, androidx.wear.compose:compose-material:1.0.0-alpha11, और androidx.wear.compose:compose-navigation:1.0.0-alpha11 रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha11 में ये बदलाव शामिल हैं.
नई सुविधाएं
- हमने एक पिकर कॉम्पोनेंट जोड़ा है. इससे उपयोगकर्ता, स्क्रोल करने वाली सूची से कोई आइटम चुन सकता है. डिफ़ॉल्ट रूप से, चुने जा सकने वाले आइटम की सूची को दोनों दिशाओं में 'अनंत' बार दोहराया जाता है, ताकि साइड से देखने पर घूमने वाले सिलेंडर का इफ़ेक्ट दिखे. बाद के वर्शन में दो सुविधाएं जोड़ी जाएंगी: स्वाइप/फ़्लिंग करने के बाद किसी वैल्यू पर स्नैप करना; PickerState में कोई फ़ंक्शन जोड़ना, ताकि मौजूदा वैल्यू को सेट/स्क्रोल किया जा सके. (I6461b)
एपीआई में हुए बदलाव
- ScalingLazyItemScope जोड़ा गया है. साथ ही, कुछ नए मॉडिफ़ायर fillParentMaxSize/fillParentMaxWidth/fillParentMaxHeight जोड़े गए हैं. इनकी मदद से, सूची में शामिल आइटम का साइज़, पैरंट कंटेनर के साइज़ के हिसाब से तय किया जा सकता है. आइटम को पैरंट के साइज़ के हिसाब से पूरा या कुछ हिस्सा भरने के लिए सेट किया जा सकता है. इससे LazyRow/Column (I4612f) में पहले से उपलब्ध सुविधा का पता चलता है
- ScalingLazyColumn में, आइटम को कुंजी देने की सुविधा जोड़ी गई. साथ ही, Arrays और Lists से आइटम जोड़ने की सुविधा देने वाले तरीके भी जोड़े गए हैं. (Ic1f89)
गड़बड़ियां ठीक की गईं
- TimeText (I8cb64) के कुछ और उदाहरण
वर्शन 1.0.0-alpha10
3 नवंबर, 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha10, androidx.wear.compose:compose-material:1.0.0-alpha10, और androidx.wear.compose:compose-navigation:1.0.0-alpha10 रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha10 में ये बदलाव शामिल हैं.
नई सुविधाएं
Wear Compose के लिए InlineSlider जोड़ा गया. InlineSlider की मदद से, उपयोगकर्ता वैल्यू की किसी रेंज में से कोई वैल्यू चुन सकते हैं. चुने गए विकल्पों की रेंज को, रेंज की कम से कम और ज़्यादा से ज़्यादा वैल्यू के बीच एक बार के तौर पर दिखाया जाता है. इससे लोग किसी भी वैल्यू को चुन सकते हैं. (If0148)
WearOS के लिए Compose Codelab का नया वर्शन देखें!
एपीआई में हुए बदलाव
- मैक्रोबेंचमार्क में अब
23काminSdkVersionहै. (If2655)
गड़बड़ियां ठीक की गईं
- SideEffect में SwipeDismissableNavHost में ट्रांज़िशन हैंडलिंग को अपडेट किया गया (I04994, b/202863359)
- SwipeDismissableNavHost में ट्रांज़िशन हैंडलिंग को अपडेट किया गया (I1cbe0, b/202863359)
वर्शन 1.0.0-alpha09
27 अक्टूबर, 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha09, androidx.wear.compose:compose-material:1.0.0-alpha09, और androidx.wear.compose:compose-navigation:1.0.0-alpha09 रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha09 में ये बदलाव शामिल हैं.
नई सुविधाएं
- हमने Wear OS पर Compose की डेवलपर प्रीव्यू सुविधा लॉन्च की है. हमारी ब्लॉग पोस्ट देखें. इसमें मुख्य कंपोज़ेबल की समीक्षा की गई है. साथ ही, उन्हें इस्तेमाल करने के लिए अन्य संसाधनों के लिंक दिए गए हैं.
एपीआई में हुए बदलाव
- हमने डेवलपर के लिए, Wear Material Design Color थीम के सभी रंगों को पसंद के मुताबिक बनाने की सुविधा जोड़ी है. (I4759b, b/199754668)
गड़बड़ियां ठीक की गईं
- SwipeToDismissBox के ऐसे सैंपल जोड़े गए हैं जो स्थिति बनाए रखते हैं (Ibaffe)
- CurvedText, TimeText, और SwipeToDismissBox के लिए, KDocs से developer.android.com की गाइड के लिंक जोड़े गए. (I399d4)
- अगर कोई मौजूदा डेस्टिनेशन नहीं है, तो SwipeDismissableNavHost अब गड़बड़ी दिखाता है. इससे पता चलता है कि NavGraph को wear.compose.navigation.composable यूटिलिटी फ़ंक्शन के साथ नहीं बनाया गया था (I91403)
- TimeText (I4f6f0) में टाइम सोर्स के इस्तेमाल से जुड़े ज़्यादा दस्तावेज़ और उदाहरण जोड़े गए
वर्शन 1.0.0-alpha08
13 अक्टूबर, 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha08, androidx.wear.compose:compose-material:1.0.0-alpha08, और androidx.wear.compose:compose-navigation:1.0.0-alpha08 रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha08 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- हमने AppCard और TitleCard
bodyप्रॉपर्टी का नाम बदलकरcontentकर दिया है. साथ ही, हमने इन्हें प्रॉपर्टी की सूची के आखिर में ले जाकर, ट्रेलिंग लैम्डा के तौर पर उपलब्ध कराया है. साथ ही, नए स्लॉट के नामों के साथ एक जैसा नाम रखने के लिए,bodyColorका नाम बदलकरcontentColorकर दिया गया है. (I57e78)
गड़बड़ियां ठीक की गईं
- बटन, कार्ड, चिप, थीम, पोज़िशन इंडिकेटर, और स्केलिंग लेज़ी कॉलम कॉम्पोनेंट के लिए, KDocs से developer.android.com की गाइड के लिंक जोड़े गए. (I22428)
- WearOS SwipeToDismissBox में स्वाइप करने की सुविधा कभी-कभी काम नहीं करती. इस समस्या को ठीक किया गया है. (I9387e)
- बटन, CompactButton, चिप, CompactChip, AppCard, TitleCard, ToggleButton, ToggleChip, SplitToggleChip के लिए सैंपल जोड़े गए (Iddc15)
- Card, Chip, ToggleChip, TimeText, और ScalingLazyColumn के लिए, परफ़ॉर्मेंस के माइक्रोबेंचमार्क टेस्ट जोड़े गए. (If2fe9)
वर्शन 1.0.0-alpha07
29 सितंबर, 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha07, androidx.wear.compose:compose-material:1.0.0-alpha07, और androidx.wear.compose:compose-navigation:1.0.0-alpha07 रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha07 में ये बदलाव शामिल हैं.
नई सुविधाएं
- मटीरियल में CurvedText कॉम्पोनेंट जोड़ा गया है. यह एक ऐसा कॉम्पोनेंट है जिसकी मदद से डेवलपर, सर्कल के घुमाव के हिसाब से आसानी से घुमावदार टेक्स्ट लिख सकते हैं. आम तौर पर, यह कॉम्पोनेंट गोल स्क्रीन के किनारे पर इस्तेमाल किया जाता है. (I19593)
एपीआई में हुए बदलाव
- TimeText (Idfead) के लिए टेस्ट जोड़े गए
- ArcPaddingValues को इंटरफ़ेस में बदलें. (Iecd4c)
- SwipeToDismissBox (I9ad1b) में ऐनिमेशन जोड़ा गया
- SwipeToDismissBox API में hasBackground पैरामीटर जोड़ा गया है, ताकि स्वाइप करने के जेस्चर को तब बंद किया जा सके, जब दिखाने के लिए कोई बैकग्राउंड कॉन्टेंट न हो. (I313d8)
rememberNavController()अबNavigatorके एक वैकल्पिक सेट का इस्तेमाल करता है. इस सेट को, लौटाए गएNavControllerमें जोड़ा जाएगा, ताकि Accompanist Navigation Material जैसे वैकल्पिक नेविगेटर को बेहतर तरीके से सपोर्ट किया जा सके. (I4619e)- navigation-common से NamedNavArgument का रेफ़रंस दें और wear.compose.navigation से कॉपी हटाएं. (I43af6)
गड़बड़ियां ठीक की गईं
- छोटे डिवाइसों पर CurvedRow टेस्ट के फ़ेल होने की समस्या ठीक की गई. (If7941)
- कॉन्टेंट अपडेट होने पर, CurvedRow में फ़्लिकरिंग की समस्या ठीक की गई है. साथ ही, यह पक्का किया गया है कि CurvedRow को फिर से मापा गया हो (Ie4e06)
- UX स्पेसिफ़िकेशन में हुए बदलावों के मुताबिक, ChipDefaults.gradientBackgroundChipColors() को अपडेट कर दिया गया है. अब ग्रेडिएंट, MaterialTheme.colors.primary से शुरू होता है. इसकी ऐल्फ़ा वैल्यू 32.5% है. यह MaterialTheme.colors.surface पर खत्म होता है. इसकी ऐल्फ़ा वैल्यू 0% है. यह MaterialTheme.colors.surface के 75% ऐल्फ़ा वैल्यू वाले बैकग्राउंड पर होता है. (Id1548)
- हमने चुने गए टॉगलचिप के रंगों को अपडेट किया है, ताकि वे Wear के लिए बने मटीरियल डिज़ाइन के यूज़र एक्सपीरियंस (यूएक्स) से जुड़े दिशा-निर्देशों के मुताबिक हों. चुने गए टॉगल चिप में अब ग्रेडिएंट बैकग्राउंड है. यह MaterialTheme.color.surface @ 0% ऐल्फ़ा, ऊपर बाईं ओर से MaterialTheme.color.primary @ 32% ऐल्फ़ा, नीचे दाईं ओर तक है. यह MaterialTheme.color.surface @ 75% ऐल्फ़ा के बैकग्राउंड पर है. इससे, ToggleChip के लिए चुने गए और नहीं चुने गए आइटम के बीच का अंतर और भी कम हो जाता है. (Idd40b)
वर्शन 1.0.0-alpha06
15 सितंबर, 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha06, androidx.wear.compose:compose-material:1.0.0-alpha06, और androidx.wear.compose:compose-navigation:1.0.0-alpha06 रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha06 में ये बदलाव शामिल हैं.
नई सुविधाएं
- हमने टॉप लेवल का ऐप्लिकेशन कंपोज़ेबल Scaffold जोड़ा है. यह PositionIndicators (जैसे कि स्क्रोल या वॉल्यूम) की पोज़िशन को मैनेज करने के लिए स्ट्रक्चर उपलब्ध कराता है. साथ ही, यह स्क्रीन के सबसे ऊपर मौजूद उस हिस्से को मैनेज करता है जहां समय और ऐप्लिकेशन की स्थिति दिखती है. इसके अलावा, यह स्क्रोल किए जा सकने वाले कॉन्टेंट के लिए, स्क्रीन के ऊपर और नीचे के किनारे को धुंधला करने वाले Vignette को भी सपोर्ट करता है. Scaffold का मुख्य हिस्सा वह होता है जहां ऐप्लिकेशन का कॉन्टेंट रखा जाता है. (I5e0bf)
- Wear Compose के लिए TimeText लागू करने की सुविधा जोड़ी गई (I5654c)
Wear Compose Navigation Library
हमने Wear Compose Navigation लाइब्रेरी की पहली रिलीज़ जोड़ी है. यह Wear Compose और Androidx Navigation लाइब्रेरी के बीच इंटिग्रेशन उपलब्ध कराती है. यह आपके ऐप्लिकेशन में डेस्टिनेशन के तौर पर, @Composable फ़ंक्शन के बीच नेविगेट करने का आसान तरीका उपलब्ध कराता है.
इस शुरुआती रिलीज़ में ये सुविधाएं उपलब्ध हैं:
SwipeDismissableNavHostएक कंपोज़ेबल है, जो नेविगेशन ग्राफ़ को होस्ट करता है. साथ ही, स्वाइप जेस्चर की मदद से पीछे जाने की सुविधा देता हैNavGraphBuilder.composableएक्सटेंशन, नेविगेशन ग्राफ़ बनाने में मदद करता हैrememberSwipeDismissableNavController()को स्टेट होइस्ट करने की अनुमति दें
इस्तेमाल का उदाहरण, जिसमें हम दो स्क्रीन बनाते हैं और उनके बीच नेविगेट करते हैं:
val navController = rememberSwipeDismissableNavController() SwipeDismissableNavHost( navController = navController, startDestination = "start" ) { composable("start") { Column( horizontalAlignment = Alignment.CenterHorizontally, verticalArrangement = Arrangement.Center, modifier = Modifier.fillMaxSize(), ) { Button(onClick = { navController.navigate("next") }) { Text("Go") } } } composable("next") { Column( horizontalAlignment = Alignment.CenterHorizontally, verticalArrangement = Arrangement.Center, modifier = Modifier.fillMaxSize(), ) { Text("Swipe to go back") } } }Wear Compose Navigation को एक अलग लाइब्रेरी के तौर पर पैकेज किया गया है, ताकि WearCompose के उन ऐप्लिकेशन को AndroidX Navigation लाइब्रेरी पर निर्भर न रहना पड़े जो खुद के नेविगेशन को लागू करते हैं.
एपीआई में हुए बदलाव
- बैकग्राउंड और कॉन्टेंट (I746fd) के लिए मुख्य आइडेंटिटी सेट करके,
SwipeDismissableNavHostकोrememberSaveableके साथ काम करने के लिए अपडेट किया गया - हमने एक PositionIndicator अडैप्टर जोड़ा है, जो LazyListState को हैंडल कर सकता है (I21b88)
- SwipeToDismissBox को अपडेट किया गया, ताकि वह rememberSaveable का इस्तेमाल कर सके (Ie728b)
- हमने ScalingLazyColumn में reverseLayout की सुविधा जोड़ी है. इससे स्क्रोल करने और लेआउट (I9e2fc) की दिशा को उलटा किया जा सकता है
performGestureऔरGestureScopeको बंद कर दिया गया है. इनकी जगहperformTouchInputऔरTouchInjectionScopeका इस्तेमाल किया जा सकता है. (Ia5f3f, b/190493367)- हमने VignetteValue का नाम बदलकर VignettePosition कर दिया है. साथ ही, VignetteValue.Both का नाम बदलकर VignettePosition.TopAndBottom कर दिया है. (I57ad7)
- हमने ScalingLazyColumnState का नाम बदलकर ScalingLazyListState, ScalingLazyColumnItemInfo का नाम बदलकर ScalingLazyListItemInfo, ScalingLazyColumnLayoutInfo का नाम बदलकर ScalingLazyListLayoutInfo, और ScalingLazyColumnScope का नाम बदलकर ScalingLazyListScope कर दिया है. ऐसा इसलिए किया गया है, ताकि आने वाले समय में ScalingLazyRow को लागू किया जा सके. (I22734)
गड़बड़ियां ठीक की गईं
- CompactChip के दस्तावेज़ को अपडेट किया गया है. इसमें बताया गया है कि आइकॉन और लेबल, दोनों में से कोई भी जानकारी न देने पर क्या होता है. (I4ba88)
- हमने Wear के कार्ड कॉम्पोनेंट में कुछ बदलाव किए हैं. (I6b3d0)
- TitleCard में टाइटल और मुख्य हिस्से के बीच की दूरी को 8.dp से घटाकर 2.dp कर दिया गया है.
- टाइटल कार्ड के हेडर फ़ॉन्ट को बॉडी से बदलकर title3 कर दिया गया है.
- कार्ड के बैकग्राउंड के ग्रेडिएंट को बदलकर, बैकग्राउंड को ज़्यादा गहरा कर दिया गया है.
वर्शन 1.0.0-alpha05
1 सितंबर, 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha05 और androidx.wear.compose:compose-material:1.0.0-alpha05 रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha05 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- ArcPaddingValues को @Stable के तौर पर मार्क करें (I57deb)
- ScalingLazyColumnState अब ScrollableState इंटरफ़ेस लागू करता है. इससे डेवलपर को कॉम्पोनेंट को स्क्रोल करने के लिए, प्रोग्राम के हिसाब से ऐक्सेस मिलता है. (I47dbc)
गड़बड़ियां ठीक की गईं
- हमने चिप और ToggleChip में आइकॉन और टेक्स्ट के बीच की दूरी को कम कर दिया है, ताकि उन्हें यूज़र एक्सपीरियंस (यूएक्स) स्पेसिफ़िकेशन के अपडेट के मुताबिक बनाया जा सके. (I83802)
वर्शन 1.0.0-alpha04
18 अगस्त, 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha04 और androidx.wear.compose:compose-material:1.0.0-alpha04 रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha04 में ये बदलाव शामिल हैं.
नई सुविधाएं
- SwipeToDismissBox और swipeable मॉडिफ़ायर जोड़ा गया है. इसका इस्तेमाल, बाईं से दाईं ओर स्वाइप करके खारिज करने के जेस्चर को सपोर्ट करने के लिए किया जा सकता है. नेविगेशन कॉम्पोनेंट से अलग होने के बावजूद, इसका इस्तेमाल एक स्क्रीन से बाहर निकलने और दूसरी स्क्रीन पर जाने के लिए किया जाता है. स्வைப் करके खारिज करने की सुविधा का डेमो देने के लिए, इंटिग्रेशन टेस्ट जोड़े गए. (I7bbaa)
- हमने ScalingLazyColumnState क्लास में ScalingLazyColumnItemInfo और ScalingLazyColumnLayoutInfo इंटरफ़ेस जोड़े हैं. इससे डेवलपर को, स्केलिंग लागू होने के बाद ScalingLazyColumn में मौजूद आइटम की असल पोज़िशन और साइज़ के बारे में पता चल पाएगा. हमने एक बग को भी ठीक किया है. यह बग, ScalingLazyColumn पर 'टॉप' कॉन्टेंट पैडिंग लागू होने पर, स्केलिंग के हिसाब लगाने के तरीके से जुड़ा था. (I27c07)
एपीआई में हुए बदलाव
- घुमावदार टेक्स्ट की स्टाइल तय करने के लिए, CurvedTextStyle क्लास जोड़ें. यह TextStyle की तरह ही है, लेकिन अब इसमें सिर्फ़ रंग, फ़ॉन्ट का साइज़, और बैकग्राउंड का इस्तेमाल किया जा सकता है. आने वाले समय में, स्टाइलिंग के और विकल्प जोड़े जाएंगे. (I96ac3)
- हमने ScalingLazyColumnState क्लास में ScalingLazyColumnItemInfo और ScalingLazyColumnLayoutInfo इंटरफ़ेस जोड़े हैं. इससे डेवलपर को, स्केलिंग लागू होने के बाद ScalingLazyColumn में मौजूद आइटम की असल पोज़िशन और साइज़ के बारे में पता चल पाएगा. हमने एक बग को भी ठीक किया है. यह बग, ScalingLazyColumn पर 'टॉप' कॉन्टेंट पैडिंग लागू होने पर, स्केलिंग के हिसाब लगाने के तरीके से जुड़ा था. (I27c07)
@ExperimentalWearMaterialApiकोSwipeDismissTargetenum में जोड़ा गया है. यहSwipeToDismissBoxAPI का हिस्सा है. (I48b5e)
गड़बड़ियां ठीक की गईं
- SwipeToDismissBox के लिए टेस्ट मटीरियल जोड़ा गया (I9febc)
वर्शन 1.0.0-alpha03
4 अगस्त, 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha03 और androidx.wear.compose:compose-material:1.0.0-alpha03 रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha03 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- CurvedText कॉम्पोनेंट जोड़ा गया है. इससे डेवलपर, सर्कल के घुमाव (आम तौर पर, यह घुमाव गोल स्क्रीन के किनारे पर होता है) के हिसाब से आसानी से टेक्स्ट लिख सकते हैं (Id1267)
- हमने
CardDefaults.imageBackgroundPainter()का नाम बदलकरCardDefaults.imageWithScrimBackgroundPainter()कर दिया है, ताकि यह साफ़ तौर पर पता चल सके कि बैकग्राउंड इमेज पर स्क्रीम दिखेगी. (I53206) - ScalingLazyColumn कॉम्पोनेंट जोड़ा गया है. यह Wear Material के लिए एक लिस्ट कॉम्पोनेंट उपलब्ध कराता है. इससे फ़िशआई व्यू मिलता है. इसमें लिस्ट के कॉन्टेंट का साइज़ कम हो जाता है और कॉम्पोनेंट के किनारे की ओर बढ़ने पर वे पारदर्शी हो जाते हैं. (I7070c)
गड़बड़ियां ठीक की गईं
- हमने UX स्पेसिफ़िकेशन के अपडेट के जवाब में, AppCard में मौजूद appName कॉन्टेंट का डिफ़ॉल्ट रंग बदल दिया है. appName के लिए डिफ़ॉल्ट रंग अब
MaterialTheme.colors.onSurfaceVariantहै. इसके अलावा, टाइटल स्लॉट के लिए दस्तावेज़ में मौजूद नहीं है, ऐसे पैरामीटर की जानकारी जोड़ी गई है. (Ic4ad1)
वर्शन 1.0.0-alpha02
21 जुलाई, 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha02 और androidx.wear.compose:compose-material:1.0.0-alpha02 रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha02 में ये बदलाव शामिल हैं.
नई सुविधाएं
- आर्क में लेआउट किए गए कंपोज़ेबल के लिए, नई क्लास CurvedRow जोड़ी गई (I29941)
- ऐप्लिकेशन में इस्तेमाल करने के लिए, एक नया कार्ड (TitleCard) जोड़ा गया है. साथ ही, कार्ड के कॉन्टेंट को हाइलाइट करने के लिए, कार्ड के बैकग्राउंड में इमेज इस्तेमाल करने की सुविधा जोड़ी गई है (I53b0f)
एपीआई में हुए बदलाव
- CurvedRow में रेडियल अलाइनमेंट के लिए सहायता जोड़ी गई. यह किसी लाइन में वर्टिकल अलाइनमेंट की तरह होता है (Id9de5)
- आर्क में लेआउट किए गए कंपोज़ेबल में नई CurvedRow क्लास जोड़ें (I29941)
- ऐप्लिकेशन में इस्तेमाल करने के लिए, एक नया कार्ड (TitleCard) जोड़ा गया है. साथ ही, कार्ड के कॉन्टेंट को हाइलाइट करने के लिए, कार्ड के बैकग्राउंड में इमेज इस्तेमाल करने की सुविधा जोड़ी गई है (I53b0f)
- ToggleChipDefaults में टॉगल आइकॉन (चेकबॉक्स, स्विच, और रेडियो बटन) जोड़े गए हैं, ताकि डेवलपर के लिए ToggleChip और SplitToggleChips को कॉन्फ़िगर करना आसान हो सके (I7b639)
- चिप के लिए, कॉन्टेंट के शुरू और खत्म होने के बीच के पैडिंग को अपडेट किया गया है, ताकि यह हमेशा 14.dp रहे. इससे कोई फ़र्क़ नहीं पड़ता कि चिप में कोई आइकॉन मौजूद है या नहीं. पहले, अगर आइकॉन मौजूद होता था, तो यह 12.dp होता था और अगर आइकॉन मौजूद नहीं होता था, तो यह 14.dp होता था (I34c86)
गड़बड़ियां ठीक की गईं
- CurvedRow (I93cdb) के लिए टेस्ट जोड़ें
- Wear Compose की डिपेंडेंसी को Compose 1.0.0-rc01 से लिंक किया गया है. (Ie6bc9)
- कार्ड और चिप में बैकग्राउंड इमेज पेंट करने के तरीके में बदलाव किया गया है, ताकि इमेज के अनुपात को बनाए रखने के लिए इमेज को स्ट्रेच करने के बजाय काटा जा सके. (I29b41)
- Button और ToggleButton के लिए, ज़्यादा डेमो और इंटिग्रेशन टेस्ट जोड़े गए. (5e27ed2)
- imageBackgroundChips के कॉन्टेंट के रंगों को कवर करने के लिए, ज़्यादा चिप टेस्ट जोड़े गए (Ia9183)
वर्शन 1.0.0-alpha01
1 जुलाई, 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha01 और androidx.wear.compose:compose-material:1.0.0-alpha01 रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha01 में ये बदलाव शामिल हैं.
नई सुविधाएं
Wear Compose, Kotlin और Compose पर आधारित एक लाइब्रेरी है. यह Wear Material Design के साथ काम करती है. Wear Material Design, WearOS डिवाइसों के लिए Material Design का एक्सटेंशन है. इस पहले ऐल्फ़ा वर्शन में, यहां दी गई सुविधाओं को शुरुआती तौर पर लागू किया गया है. ये सुविधाएं काम करती हैं:
- मटीरियल थीम - यह लाइब्रेरी में इस्तेमाल किए गए सभी कॉम्पोनेंट के लिए, रंगों, टाइपोग्राफ़ी, और शेप को एक जैसा कॉन्फ़िगर करती है.
- चिप, CompactChip - चिप, स्टेडियम के आकार की होती हैं. इनमें आइकॉन, लेबल, और सेकंडरी लेबल का कॉन्टेंट शामिल करने के लिए अलग-अलग वर्शन उपलब्ध होते हैं.
- - ToggleChip, SplitToggleChip - यह एक खास तरह का चिप होता है. इसमें दो स्थितियों वाले टॉगल आइकॉन के लिए एक स्लॉट होता है. जैसे, रेडियो बटन या चेकबॉक्स. इसके अलावा, SplitToggleChip में टैप करने के लिए दो जगहें होती हैं. इनमें से एक पर क्लिक किया जा सकता है और दूसरी को टॉगल किया जा सकता है.
- बटन, CompactButton - बटन गोल आकार के होते हैं. इनमें आइकॉन या कम से कम टेक्स्ट (ज़्यादा से ज़्यादा तीन वर्ण) के लिए एक कॉन्टेंट स्लॉट होता है.
- ToggleButton - यह एक ऐसा बटन होता है जो किसी कार्रवाई को चालू या बंद करता है. इसमें आइकॉन या कम से कम टेक्स्ट (ज़्यादा से ज़्यादा तीन वर्ण) के लिए एक स्लॉट होता है.
- कार्ड, AppCard - आयताकार, जिसके कोने गोल हैं. इसमें कॉन्टेंट के लिए स्लॉट दिए गए हैं. जैसे, ऐप्लिकेशन का आइकॉन, समय, टाइटल, और मुख्य भाग.
आने वाले समय में, विजेट के सेट को और भी बेहतर बनाया जाएगा. इसमें Wear के लिए मटीरियल डिज़ाइन पिकर, स्लाइडर, सूचियां, पेज इंडिकेटर, डायलॉग, स्क्रोल आरएसबी इंडिकेटर, सूचनाएं वगैरह शामिल होंगी.
इसके अलावा, Wearable डिवाइसों के लिए उपलब्ध अन्य सुविधाओं के लिए भी सहायता दी जाएगी. जैसे, घुमावदार लेआउट और टेक्स्ट. साथ ही, डेवलपर को Wearable डिवाइसों के लिए ऐप्लिकेशन/ओवरले बनाने में आसानी हो, इसके लिए भी सहायता दी जाएगी.
Wear Compose Material को Compose Material के सिद्धांतों के आधार पर ही डिज़ाइन किया गया है. हालांकि, इसे पहनने लायक़ डिवाइसों के लिए बनाया गया है. वियरेबल डिवाइस के लिए ऐप्लिकेशन बनाते समय, Compose Material लाइब्रेरी की जगह Wear Compose Material लाइब्रेरी का इस्तेमाल किया जाना चाहिए.
“Material” की दोनों लाइब्रेरी को एक-दूसरे से अलग माना जाना चाहिए. साथ ही, इन्हें एक ही ऐप्लिकेशन में नहीं मिलाया जाना चाहिए. अगर डेवलपर को अपनी डिपेंडेंसी में Compose Material लाइब्रेरी शामिल करनी पड़ती है, तो इसका मतलब है कि या तो a) Wear Compose Material लाइब्रेरी में कुछ कॉम्पोनेंट मौजूद नहीं हैं. कृपया हमें बताएं कि आपको क्या चाहिए या b) वे ऐसे कॉम्पोनेंट का इस्तेमाल कर रहे हैं जिसे हम Wearable डिवाइस पर इस्तेमाल करने का सुझाव नहीं देते.