Compose Material 3
androidx.compose.material3
(सभी कंपोज़ पैकेज के लिए, एपीआई के बारे में जानकारी देने वाले दस्तावेज़ देखें)
नया अपडेट | स्टेबल रिलीज़ | रिलीज़ कैंडिडेट | बीटा रिलीज़ | ऐल्फ़ा वर्शन |
---|---|---|---|---|
30 जुलाई, 2025 | 1.3.2 | - | 1.4.0-beta01 | 1.5.0-alpha01 |
संरचना
Compose, androidx
में मौजूद सात Maven ग्रुप आईडी का कॉम्बिनेशन है. हर ग्रुप में, फ़ंक्शन का टारगेट किया गया सबसेट होता है. हर ग्रुप के रिलीज़ नोट का अपना सेट होता है.
इस टेबल में, ग्रुप और रिलीज़ नोट के हर सेट के लिंक के बारे में बताया गया है.
ग्रुप | ब्यौरा |
---|---|
compose.animation | उपयोगकर्ता अनुभव को बेहतर बनाने के लिए, Jetpack Compose ऐप्लिकेशन में ऐनिमेशन बनाएं. |
compose.compiler | @Composable फ़ंक्शन को बदलें और Kotlin कंपाइलर प्लगिन की मदद से ऑप्टिमाइज़ेशन चालू करें. |
compose.foundation | इस्तेमाल के लिए तैयार बिल्डिंग ब्लॉक की मदद से, Jetpack Compose ऐप्लिकेशन लिखें. साथ ही, अपने डिज़ाइन सिस्टम के कॉम्पोनेंट बनाने के लिए, फ़ाउंडेशन को बढ़ाएं. |
compose.material | इस्तेमाल के लिए तैयार मटीरियल डिज़ाइन कॉम्पोनेंट की मदद से, Jetpack Compose यूज़र इंटरफ़ेस (यूआई) बनाएं. यह Compose का टॉप लेवल एंट्री पॉइंट है. इसे ऐसे कॉम्पोनेंट उपलब्ध कराने के लिए डिज़ाइन किया गया है जो www.material.io पर बताए गए कॉम्पोनेंट से मेल खाते हों. |
compose.material3 | मटीरियल डिज़ाइन 3 कॉम्पोनेंट की मदद से, Jetpack Compose यूज़र इंटरफ़ेस (यूआई) बनाएं. ये कॉम्पोनेंट, मटीरियल डिज़ाइन का अगला वर्शन हैं. Material 3 में, अपडेट की गई थीमिंग और कॉम्पोनेंट शामिल हैं. साथ ही, इसमें Material You की मनमुताबिक बनाने की सुविधाएं भी हैं, जैसे कि डाइनैमिक कलर. इसे Android 12 की नई विज़ुअल स्टाइल और सिस्टम यूज़र इंटरफ़ेस (यूआई) के साथ काम करने के लिए डिज़ाइन किया गया है. |
compose.runtime | Compose के प्रोग्रामिंग मॉडल और स्टेट मैनेजमेंट के बुनियादी बिल्डिंग ब्लॉक. साथ ही, Compose Compiler Plugin के लिए कोर रनटाइम, ताकि उसे टारगेट किया जा सके. |
compose.ui | डिवाइस के साथ इंटरैक्ट करने के लिए, Compose यूज़र इंटरफ़ेस (यूआई) के बुनियादी कॉम्पोनेंट. इनमें लेआउट, ड्रॉइंग, और इनपुट शामिल हैं. |
डिपेंडेंसी का एलान करना
Compose पर डिपेंडेंसी जोड़ने के लिए, आपको अपने प्रोजेक्ट में Google Maven रिपॉज़िटरी जोड़नी होगी. ज़्यादा जानकारी के लिए, Google की Maven रिपॉज़िटरी पढ़ें.
अपने ऐप्लिकेशन या मॉड्यूल के लिए, build.gradle
फ़ाइल में उन आर्टफ़ैक्ट की डिपेंडेंसी जोड़ें जिनकी आपको ज़रूरत है:
Groovy
dependencies { implementation "androidx.compose.material3:material3:1.3.2" implementation "androidx.compose.material3:material3-window-size-class:1.3.2" implementation "androidx.compose.material3:material3-adaptive-navigation-suite:1.5.0-alpha01" } android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.1.1" } kotlinOptions { jvmTarget = "1.8" } }
Kotlin
dependencies { implementation("androidx.compose.material3:material3:1.3.2") implementation("androidx.compose.material3:material3-window-size-class:1.3.2") implementation("androidx.compose.material3:material3-adaptive-navigation-suite:1.5.0-alpha01") } android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.1.1" } kotlinOptions { jvmTarget = "1.8" } }
डिपेंडेंसी के बारे में ज़्यादा जानने के लिए, बिल्ड डिपेंडेंसी जोड़ना लेख पढ़ें.
सुझाव/राय दें या शिकायत करें
आपके सुझाव, शिकायत या राय से Jetpack को बेहतर बनाने में मदद मिलती है. अगर आपको कोई नई समस्या मिलती है या इस लाइब्रेरी को बेहतर बनाने के लिए आपके पास कोई सुझाव है, तो हमें बताएं. कृपया नई लाइब्रेरी बनाने से पहले, इस लाइब्रेरी में मौजूद मौजूदा समस्याओं को देखें. स्टार बटन पर क्लिक करके, किसी मौजूदा समस्या के लिए वोट किया जा सकता है.
ज़्यादा जानकारी के लिए, Issue Tracker का दस्तावेज़ देखें.
Compose Material3 Common Version 1.0
वर्शन 1.0.0-alpha01
17 अप्रैल, 2024
androidx.compose.material3:material3-common:1.0.0-alpha01
, androidx.compose.material3:material3-common-android:1.0.0-alpha01
, और androidx.compose.material3:material3-common-desktop:1.0.0-alpha01
रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha01 में ये कमिट शामिल हैं.
नई सुविधाएं
थीम के बिना कॉम्पोनेंट, जिनका इस्तेमाल करके मटीरियल डिज़ाइन कॉम्पोनेंट बनाए जा सकते हैं:
- टोनल पैलेट
- आइकॉन
- टच टारगेट का साइज़
Compose Material3 Adaptive Navigation Suite का वर्शन 1.0
वर्शन 1.0.0-alpha07
1 मई, 2024
androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha07
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha07
, और androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha07
रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha07 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- नेविगेशन सुइट के एपीआई को एक्सपेरिमेंटल से हटाना (If62af)
गड़बड़ियां ठीक की गईं
- कॉन्टेंट के लिए डिफ़ॉल्ट रूप से इनसेट का इस्तेमाल करना (50266df)
वर्शन 1.0.0-alpha06
17 अप्रैल, 2024
androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha06
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha06
, और androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha06
रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha06 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
NavigationSuiteScaffoldDefaults
मेंcontainerColor
औरcontentColor
जोड़ें. (I64e3a, b/331993720)NavigationSuiteDefaults
मेंitemColors
फ़ंक्शन जोड़ा गया. (Idf719, b/328480012)NavigationSuiteScope
को सील करें. (Iefa57)
वर्शन 1.0.0-alpha05
6 मार्च, 2024
androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha05
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha05
, और androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha05
रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha05 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
NavigationSuiteItemColors
कंस्ट्रक्टर को सार्वजनिक करें. (Ica83a, b/324886877)
वर्शन 1.0.0-alpha04
21 फ़रवरी, 2024
androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha04
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha04
, और androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha04
रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha04 में ये कमिट शामिल हैं.
डिपेंडेंसी से जुड़े अपडेट
- Material3 अडैप्टिव डिपेंडेंसी को नए मॉड्यूल पाथ पर अपडेट करें. (Ibc421)
- विंडो साइज़ क्लास के विंडो मैनेजर वर्शन का इस्तेमाल करने के लिए माइग्रेट करें. (I3794d)
वर्शन 1.0.0-alpha03
7 फ़रवरी, 2024
androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha03
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha03
, और androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha03
रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha03 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- पैकेज का नाम navigation-suite से बदलकर navigationsuite करें (I7eff7)
- Material3 कॉम्पोनेंट, अपने एपीआई में
MutableInteractionSource
को दिखाते हैं. इन्हें अब अपडेट कर दिया गया है. अब ये ऐसेMutableInteractionSource
को दिखाते हैं जो नल हो सकता है और डिफ़ॉल्ट रूप से नल पर सेट होता है. यहां सिमैंटिक में कोई बदलाव नहीं किया गया है: null पास करने का मतलब है कि आपकोMutableInteractionSource
को ऊपर नहीं ले जाना है. अगर ज़रूरत होगी, तो इसे कॉम्पोनेंट के अंदर बनाया जाएगा. इसे null पर सेट करने से, कुछ कॉम्पोनेंट को कभी भीMutableInteractionSource
असाइन नहीं किया जाता है. साथ ही, अन्य कॉम्पोनेंट को सिर्फ़ तब इंस्टेंस बनाने की अनुमति मिलती है, जब उन्हें इसकी ज़रूरत होती है. इससे इन कॉम्पोनेंट की परफ़ॉर्मेंस बेहतर होती है. अगर इन कॉम्पोनेंट को पास किए गएMutableInteractionSource
का इस्तेमाल नहीं किया जा रहा है, तो हमारा सुझाव है कि आप इसके बजाय null पास करें. हमारा यह भी सुझाव है कि आप अपने कॉम्पोनेंट में भी इसी तरह के बदलाव करें. (I41abb, b/298048146)
वर्शन 1.0.0-alpha02
13 दिसंबर, 2023
androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha02
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha02
, और androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha02
रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha02 में ये कमिट शामिल हैं.
नई सुविधाएं
- 'कोई नहीं'
NavigationSuiteType
जोड़ें (If8cb1, b/313688598)
गड़बड़ियां ठीक की गईं
- जब रूट सर्फ़ेस में
modifier.fillMaxSize
होता है, तब नेविगेशन कॉम्पोनेंट के पूरी स्क्रीन पर दिखने की समस्या ठीक की गई. (c9cf250, b/312664933)
वर्शन 1.0.0-alpha01
15 नवंबर, 2023
androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha01
रिलीज़ हो गया है. वर्शन 1.0.0-alpha01 में ये कमिट शामिल हैं.
नई सुविधाएं
Compose Material3 अडैप्टिव वर्शन 1.0
वर्शन 1.0.0-alpha06
7 फ़रवरी, 2024
androidx.compose.material3:material3-adaptive:1.0.0-alpha06
, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha06
, और androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha06
रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha06 में ये कमिट शामिल हैं.
नई सुविधाएं
ThreePaneScaffoldNavigator
बैक नेविगेशन के लिए, व्यवहार से जुड़े अन्य विकल्प जोड़े गए. (I858aa)- नेविगेशन इतिहास में, डेस्टिनेशन का वैकल्पिक कॉन्टेंट जोड़ा गया. (Ibd7e6)
वर्शन 1.0.0-alpha05
24 जनवरी, 2024
androidx.compose.material3:material3-adaptive:1.0.0-alpha05
, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha05
, और androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha05
रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha05 में ये कमिट शामिल हैं.
नई सुविधाएं
- स्काफ़ोल्ड नेविगेशन और वैल्यू कैलकुलेशन में, इतिहास की जानकारी देने की सुविधा जोड़ी गई (I71d46)
वर्शन 1.0.0-alpha04
10 जनवरी, 2024
androidx.compose.material3:material3-adaptive:1.0.0-alpha04
, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha04
, और androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha04
रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha04 में ये कमिट शामिल हैं.
नई सुविधाएं
- पेन के स्केफ़ोल्ड में, एज-टू-एज सपोर्ट जोड़ा गया (I1b462)
एपीआई में हुए बदलाव
- Posture में, हिंज बाउंड्री की प्रॉपर्टी को हिंज की जानकारी (I24f90) की सूची में ले जाया गया
गड़बड़ियां ठीक की गईं
AnimatedPane
को फिर से कंपोज़ नहीं किया गया है (c3f573d)
वर्शन 1.0.0-alpha03
13 दिसंबर, 2023
androidx.compose.material3:material3-adaptive:1.0.0-alpha03
, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha03
, और androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha03
रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha03 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- स्काफ़ोल्ड की भूमिकाओं को
ThreePaneScaffoldRole
के उपनामों में बदलें. (I65bd1) - स्काफ़ोल्ड भूमिकाओं के लिए बेस क्लास बनाएं (I4784d)
AnimatedPane
के कॉन्टेंट (Ibc73b) से ग़ैर-ज़रूरी पैरामीटर हटाएंcollectWindowSizeAsState
का नाम बदलता है और इसके बजाय रॉ वैल्यू दिखाता है (I480f4)
वर्शन 1.0.0-alpha02
29 नवंबर, 2023
androidx.compose.material3:material3-adaptive:1.0.0-alpha02
, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha02
, और androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha02
रिलीज़ किए गए हैं. वर्शन 1.0.0-alpha02 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- नेविगेशन एपीआई को अडैप्टिव स्कैफ़ोल्ड एपीआई से अलग किया गया. (Ic4045)
GutterSize
क्लास हटाएं. (I785b3)
गड़बड़ियां ठीक की गईं
AnimatedPane
का इस्तेमाल न करने पर, फ़िक्स किए गए पैन स्विच नहीं होते हैं (d88f181)
वर्शन 1.0.0-alpha01
15 नवंबर, 2023
androidx.compose.material3:material3-adaptive:1.0.0-alpha01
रिलीज़ हो गया है. वर्शन 1.0.0-alpha01 में ये कमिट शामिल हैं.
नई सुविधाएं
Material3 के अडैप्टिव कंडिशन वाले एपीआई:
Material3 के अडैप्टिव पैन के लिए, स्कैफ़ोल्ड डायरेक्टिव एपीआई:
Material3 अडैप्टिव पैन स्कैफ़ोल्ड एपीआई:
- पेन के बुनियादी एपीआई
Compose Material3 वर्शन 1.5
वर्शन 1.5.0-alpha01
30 जुलाई, 2025
androidx.compose.material3:material3-*:1.5.0-alpha01
रिलीज़ हो गया है. वर्शन 1.5.0-alpha01 में ये कमिट शामिल हैं.
नई सुविधाएं
- टूलटिप के लिए, पोज़िशन की जानकारी देने वाले और विकल्प जोड़े गए हैं. इससे डेवलपर यह कंट्रोल कर सकते हैं कि टूलटिप को ऐंकर के ऊपर, नीचे, बाईं ओर या दाईं ओर रखा जाए. केरेट के लिए एक ऐसा एपीआई जोड़ें जो शेप लेता हो, ताकि ज़्यादा कस्टम शेप दिए जा सकें. (Ie513c)
एपीआई में हुए बदलाव
TextFieldColors
अब कॉम्पोनेंट के रंगों का हिसाब लगाने के तरीके सार्वजनिक तौर पर उपलब्ध हैं. (I03165)onDismiss
कॉलबैक से, निलंबित करने का एनोटेशन हटा दिया गया है. (Ie3166)DatePickerState.getDisplayedMonth(): YearMonth?
औरDateRangePickerState.getDisplayedMonth(): YearMonth?
को अपडेट किया गया है, ताकि वे नॉन-नलेबल वैल्यू दिखा सकें. (Ice09c, b/427952972)ModalWideNavigationRailDefaults
को हटाएं, इसके कॉन्टेंट कोWideNavigationRailDefaults
में ले जाएं, और इसके शेप से जुड़े नामों का नाम बदलें. (Ic5e61)WideNavigationRailItem
’s colors and copy deprecated functions should be level Hidden. (Id7e82)WideNavigationRail
एपीआई के इस्तेमाल बंद होने के लेवल को बदलकर चेतावनी पर सेट करें और उन्हें एक्सपेरिमेंटल बनाएं. (I89085)
गड़बड़ियां ठीक की गईं
- यह कुकी यह पक्का करती है कि
DatePicker
, संख्या को फ़ॉर्मैट करने के लिए अपनी स्थानीय भाषा का इस्तेमाल करे. पहले, अगर अरबी भाषा के लिएDatePicker
को कॉन्फ़िगर किया गया था, तो डिवाइस के सिस्टम के लिए इस्तेमाल की जा रही भाषा में अलग नंबरिंग सिस्टम का इस्तेमाल होने पर, लैटिन अंकों को गलत तरीके से रेंडर किया जा सकता था. (Iccf76, b/432616196) LinearProgressIndicator
समस्या को ठीक किया गया है. इस समस्या की वजह से, आरटीएल लेआउट में स्टॉप इंडिकेटर सही तरीके से रेंडर नहीं हो रहा था. (I0734c)PrimaryScrollableTabRow
औरSecondaryScrollableTabRow
डिवाइडर अब पूरी स्क्रीन के साइज़ तक दिखता है. भले ही, टैब का कॉन्टेंट स्क्रीन के आखिर तक न दिखता हो. (Ic1e9c, b/261741384)
Compose Material3 वर्शन 1.4
वर्शन 1.4.0-beta01
30 जुलाई, 2025
androidx.compose.material3:material3-*:1.4.0-beta01
रिलीज़ हो गया है. वर्शन 1.4.0-beta01 में ये कमिट शामिल हैं.
नुकसान पहुंचा सकने वाले बदलाव
ExperimentalMaterial3ExpressiveApi
याExperimentalMaterial3ComponentOverrideApi
के तौर पर टैग किए गए सभी सार्वजनिक एपीआई हटा दिए गए हैं. इन सुविधाओं का इस्तेमाल जारी रखने के लिए, कृपया1.5.0-alpha
पर स्विच करें. (Ie4ae0)- कृपया ध्यान दें कि अगली रिलीज़ में, ये
pullToRefresh
एपीआई के नाम बदल दिए जाएंगे. (Ib6cbe)
नई सुविधाएं
Tooltip
में अब कैरेट के आकार और कैरेट की जगह (ऐंकर के ऊपर, नीचे, बाईं ओर या दाईं ओर) को पसंद के मुताबिक सेट करने की सुविधा उपलब्ध है. (Ie513c)
एपीआई में हुए बदलाव
onDismiss
कॉलबैक से, निलंबित करने का एनोटेशन हटा दिया गया है. (Ie3166)DatePickerState.getDisplayedMonth(): YearMonth?
औरDateRangePickerState.getDisplayedMonth(): YearMonth?
को अपडेट किया गया है, ताकि वे नॉन-नलेबल वैल्यू दिखा सकें. (Ice09c, b/427952972)ModalWideNavigationRailDefaults
को हटाएं, इसके कॉन्टेंट कोWideNavigationRailDefaults
में ले जाएं, और इसके शेप से जुड़े नामों का नाम बदलें. (Ic5e61)
गड़बड़ियां ठीक की गईं
- यह कुकी यह पक्का करती है कि
DatePicker
, संख्या को फ़ॉर्मैट करने के लिए अपनी स्थानीय भाषा का इस्तेमाल करे. पहले, अगर अरबी भाषा के लिएDatePicker
को कॉन्फ़िगर किया गया था, तो डिवाइस के सिस्टम के लिए इस्तेमाल की जा रही भाषा में अलग नंबरिंग सिस्टम का इस्तेमाल होने पर, लैटिन अंकों को गलत तरीके से रेंडर किया जा सकता था. (Iccf76, b/432616196) LinearProgressIndicator
समस्या को ठीक किया गया है. इस समस्या की वजह से, आरटीएल लेआउट में स्टॉप इंडिकेटर सही तरीके से रेंडर नहीं हो रहा था. (I0734c)PrimaryScrollableTabRow
औरSecondaryScrollableTabRow
डिवाइडर अब पूरी स्क्रीन के साइज़ तक दिखता है. भले ही, टैब का कॉन्टेंट स्क्रीन के आखिर तक न दिखता हो. (Ic1e9c, b/261741384)
वर्शन 1.4.0-alpha18
16 जुलाई, 2025
androidx.compose.material3:material3-*:1.4.0-alpha18
रिलीज़ हो गया है. वर्शन 1.4.0-alpha18 में ये कमिट शामिल हैं.
नई सुविधाएं
ModalBottomSheetProperties
अब स्क्रिम पर क्लिक करके dismissRequest को बंद करने का विकल्प देता है. (I8e715)RangeSlider
के ट्रैक में,trackCornerSize
के काम करने की सुविधा जोड़ें. (Iec529)
एपीआई में हुए बदलाव
WideNavigationRailItem
के लिएrailExpanded
को ज़रूरी पैरामीटर बनाया गया,WideNavigationRailColors
के लिएmodalContentColor
जोड़ा गया, औरWideNavigationRailDefaults.modalContainerShape
कोModalWideNavigationRailDefaults.containerShape
पर ले जाया गया. (Id60c5)WideNavigationRail
के नए कलर फ़ंक्शन पैरामीटर को आखिरी पैरामीटर के तौर पर सेट करें और पुराने फ़ंक्शन को बंद करें. (Iac7f7)PullToRefresh
अब एक स्टेबल एपीआई (I18537) हैDatePickers
API से जुड़े अपडेट. हमनेDateRangePicker
के लिए, खत्म होने की तारीख की डिफ़ॉल्ट वैल्यू को हटा दिया है. साथ ही, इसे पास करना ज़रूरी कर दिया है. हमने एपीआई के दस्तावेज़ में, तारीख के फ़ॉर्मैट में यूटीसी के हिसाब से आधी रात के इस्तेमाल के बारे में भी बताया है. साथ ही, java.time एपीआई का इस्तेमाल करने वाले नए गेटर और सेटर को फ़िलहाल एक्सपेरिमेंटल के तौर पर मार्क किया है. (I121b3, b/427952972)tint: ColorProducer
पैरामीटर वाले आइकॉन एपीआई को एक्सपेरिमेंट के तौर पर उपलब्ध सुविधा से हटाना. (Ia0133)DatePicker
,DateRangePicker
, और उनसे जुड़ी स्थितियों, क्लास, और टाइप से एक्सपेरिमेंटल एनोटेशन हटा दिए गए हैं. (I0e4e0, b/391848485)- a11y फ़ोकस की समस्या को ठीक करने के लिए, फ़ोकस किए जा सकने वाले डिफ़ॉल्ट वैल्यू को बदलकर 'गलत है' पर सेट किया गया. साथ ही,
TooltipBox
मेंhasAction
पैरामीटर जोड़ा गया. (I62998) WideNavigationRail
,ShortNavigationBar
, औरNavigationItem
एपीआई के एक्सपेरिमेंटल वर्शन को स्टेबल वर्शन में अपग्रेड किया गया. (I3ca3c)- ऐप्लिकेशन बार के कुछ फ़ंक्शन, सपोर्ट करने वाली क्लास, और ऑब्जेक्ट से
@ExperimentalMaterial3Api
एनोटेशन हटा दिए गए हैं. (I0a9b7)
वर्शन 1.4.0-alpha17
2 जुलाई, 2025
androidx.compose.material3:material3-*:1.4.0-alpha17
रिलीज़ हो गया है. वर्शन 1.4.0-alpha17 में ये कमिट शामिल हैं.
नई सुविधाएं
- बटन ग्रुप के ऐनिमेशन को अपडेट किया गया है. अब बटन को दबाने के बजाय क्लिक करने पर, ऐनिमेशन 75% तक ऐनिमेट होगा. (593942a, b/423596967)
गड़बड़ियां ठीक की गईं
- हमने उस समस्या को ठीक कर दिया है जिसमें लेआउट कैलकुलेशन के दौरान, कुछ मामलों में कैरसेल आइटम का साइज़ बड़े एलिमेंट के साइज़ से ज़्यादा हो जाता था. इससे पूरा विजेट कट जाता था. (I1c3d7, b/397489534)
- शुरू और खत्म होने की शिफ्ट के ऐसे ऑफ़सेट को स्क्रोल करते समय
beforeContentPadding
के आगे बढ़ने की समस्या ठीक की गई है जो एक-दूसरे से ओवरलैप होते थे. (c3d5f3a, b/420618979) SwipeToDismiss
के चालू होने के व्यवहार को अपडेट करें, ताकि मौजूदा स्थिति के बजाय सेटल की गई स्थिति को देखा जा सके. यह सुविधा, मौजूदा व्यवहार को पहले जैसा कर देती है. इसमें ऐंकर के व्यवहार को सिर्फ़ तब बंद किया जाता है, जब कॉम्पोनेंट को खारिज कर दिया जाता है. (3844e07, b/425006844)- अब कीबोर्ड की मदद से,
ExposedDropdownMenu
का पॉप-अप मेन्यू खोला जा सकता है. इसके अलावा, मेन्यू को कीबोर्ड की मदद से ऐक्सेस करने की सुविधा को ठीक किया गया है, ताकि बदलाव किए जा सकने वाले वर्शन के लिए मेन्यू को ऐक्सेस किया जा सके. (46ead03)
वर्शन 1.4.0-alpha16
18 जून, 2025
androidx.compose.material3:material3-*:1.4.0-alpha16
रिलीज़ हो गया है. वर्शन 1.4.0-alpha16 में ये कमिट शामिल हैं.
नई सुविधाएं
- सेंटर में अलाइन किया गया हीरो कैरोसेल कॉम्पोनेंट (I6f6d3) जोड़ा गया
एपीआई में हुए बदलाव
- XR overrides vertical toolbar (Ia1604) को लागू करें
CarouselState
में प्रोग्राम के हिसाब से स्क्रोल करने के फ़ंक्शन जोड़े गए (I12f8e)ModalWideNavigationRail
(I4f440) के लिएComponentOverride
जोड़ेंWideNavigationRail
(I6354f) के लिएComponentOverride
जोड़ेंHorizontalFloatingToolbar
(I51116) के लिएComponentOverride
बनाएंShortNavigationBar
(I30e24) के लिएComponentOverride
बनाएंSwipeToDismissBoxState
मेंconfirmValueChange
के रेफ़रंस को 'अब इस्तेमाल नहीं किया जा सकता' के तौर पर मार्क किया गया है. इसके बजाय, उपयोगकर्ताओं कोSwipeToDismissBox
APIonDismissed
कॉलबैक का इस्तेमाल करना चाहिए. (Iee780)- कैरल कॉम्पोज़ेबल में userScrollEnabled पैरामीटर जोड़ा गया. (I1d4d2)
- अब
CarouselState
से कैरसेल केcurrentItem
को देखा जा सकता है. (Ie87e9)
गड़बड़ियां ठीक की गईं
- उस समस्या को ठीक किया गया है जिसमें
FloatingToolbar
को पास किए गए FAB पर मौजूद किसी भी शेप पर, शैडो सही तरीके से लागू नहीं हो रही थी. (Icdcc9, b/423336922) - अब सभी कैरसेल, डिफ़ॉल्ट रूप से कैरसेल की सिमैंटिक भूमिका का इस्तेमाल करते हैं. (I7af12)
LaunchedEffect
के ज़रिए स्लाइडर की स्थिति अपडेट होने पर, थंब के गलत तरीके से घूमने की समस्या ठीक की गई (Id9f31, b/302774166)
वर्शन 1.4.0-alpha15
20 मई, 2025
androidx.compose.material3:material3-*:1.4.0-alpha15
रिलीज़ हो गया है. वर्शन 1.4.0-alpha15 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
MotionTheme.LocalMotionScheme
, कंपोज़िशन लोकल को जोड़ा गया. इससेCompositionLocalConsumerModifierNodes
सेcurrentValueOf(MotionTheme.LocalMotionScheme)
के साथ थीम मोशन स्कीम को ऐक्सेस किया जा सकता है. (I014b1)- फ़िक्स्ड कलर रोल के बिना
ColorScheme
कंस्ट्रक्टर का इस्तेमाल अब नहीं किया जा सकता. कृपया उस कंस्ट्रक्टर पर माइग्रेट करें जिसमें तय की गई भूमिकाएं शामिल हों. (Iad0ee) - M3 टेक्स्ट कॉम्पोनेंट अब
TextAutoSize
के साथ काम करता है. (I7f524) - स्प्लिट बटन के साइज़ के वैरिएंट बनाने के लिए एपीआई जोड़ें और सैंपल जोड़ें. (Ice30b)
गड़बड़ियां ठीक की गईं
- उस समस्या को ठीक किया गया है जिसकी वजह से, एज-टू-एज सुविधा चालू होने पर
Snackbar
औरFloatingActionButton
गलत जगह पर दिख रहे थे. Scaffold अब इन कॉम्पोनेंट पर हॉरिज़ॉन्टल इंसर्ट को सही तरीके से लागू करता है. (Ib7c30, b/244400727) BottomSheet
मोशन को पूरी तरह से बड़ा किए गए से लेकर कुछ हद तक बड़ा किए गए तक ठीक करें.BottomSheet
अब छिपाने या छोटा करने के लिए,MotionScheme
के फ़ास्ट-इफ़ेक्ट का इस्तेमाल करता है. साथ ही, बड़ा करने के लिए डिफ़ॉल्ट-स्पेशल का इस्तेमाल करता है. (Ifa46f, b/416063171)ColorScheme
कंस्ट्रक्टर को छिपा दिया गया है. इसमें सर्फ़ेस कंटेनर की भूमिकाएं नहीं हैं. अब इसका इस्तेमाल करने का सुझाव नहीं दिया जाता. (Ia7237)- ज़्यादा सुविधा देने के लिए,
CircularWavyProgressIndicator
Size.minDimension > 0
की ज़रूरी शर्त हटा दी गई है. पहले, इस शर्त के पूरा न होने पर अपवाद दिखता था. (Ic9418, b/377531195) Text(AnnotatedString)
में मौजूद हाइपरलिंक में अब डिफ़ॉल्ट रूप से, मटीरियल स्टाइलिंग लागू होती है. (I78288, b/339843816)- उस समस्या को ठीक किया गया है जिसमें
RoundedPolygon
में मौजूदtoShape()
फ़ंक्शन, पाथ को कैश मेमोरी में सेव कर रहा था. इसकी वजह से, अलग-अलग साइज़ के साथ कईcreateOutline
कॉल किए जाने पर समस्या आ रही थी. (I4026d)
वर्शन 1.4.0-alpha14
7 मई, 2025
androidx.compose.material3:material3-*:1.4.0-alpha14
रिलीज़ हो गया है. वर्शन 1.4.0-alpha14 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- एक नया
AppBarColumn
कंपोज़ेबल जोड़ा गया है. यहAppBarRow
की तरह ही काम करता है, लेकिन इसका इस्तेमाल कॉलम में मौजूद कॉन्टेंट के लिए किया जाता है. (Iaf6bd) AppBarRow
में ज़्यादा से ज़्यादा आइटम जोड़े गए. टॉप ऐप्लिकेशन बार के लिए, मटीरियल स्पेसिफ़िकेशन को सही तरीके से लागू करने के लिए यह ज़रूरी है. (I92ce4)- ऐंकर के
layoutCoordinates
को पाने के लिए,TooltipScope
में एक तरीका जोड़ा गया.drawCaret
तरीके को बंद किया जा रहा है, क्योंकि डेवलपर इस नए तरीके का इस्तेमाल करके ऐंकर बाउंडlayoutCoordinates
हासिल कर सकते हैं. साथ ही, ऐसा सही शेप बना सकते हैं जिसमें कैरट शामिल हो. (Ia2e12, b/329470609) java.time
में तारीख चुनने की सुविधा जोड़ी गई:rememberDatePickerState/rememberDateRangePickerState
ओवरलोड पेश किए गए हैं. ये java.time ऑब्जेक्ट (जैसे, initialLocalDate
,YearMonth
) स्वीकार करते हैं. साथ ही,LocalDate
औरYearMonth
जैसे टाइप का इस्तेमाल करके वैल्यू पाने/सेट करने के लिए, स्टेट ऑब्जेक्ट पर एक्सटेंशन फ़ंक्शन जोड़े गए हैं. इसके लिए, एपीआई 26 या इससे ऊपर का वर्शन या डिसुगरिंग की ज़रूरत होती है. (I70f29, b/266202516, b/281859606)CenteredTrack
कंपोज़ेबल जोड़ा गया है. इससे, बीच से शुरू होने वाले ट्रैक के साथ स्लाइडर का इस्तेमाल किया जा सकेगा. (I5b1d6)
गड़बड़ियां ठीक की गईं
- वेवी प्रोग्रेस इंडिकेटर की परफ़ॉर्मेंस को बेहतर बनाया गया है: लीनियर टाइप अब ~11% कम मेमोरी इस्तेमाल करके ~8.5% तेज़ी से लोड होते हैं. वहीं, सर्कुलर टाइप की स्पीड में ~47% की बढ़ोतरी हुई है और वे ~39% कम मेमोरी इस्तेमाल करते हैं. (I595d8)
वर्शन 1.4.0-alpha13
23 अप्रैल, 2025
androidx.compose.material3:material3-*:1.4.0-alpha13
रिलीज़ हो गया है. वर्शन 1.4.0-alpha13 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
isAppearanceLightStatusBars
औरisAppearanceLightNavigationBars
कोModalBottomSheetProperties
में फिर से शामिल किया गया है. ये सिर्फ़ Android के पैरामीटर के तौर पर उपलब्ध हैं. (Id4bc0)- एक
AppBarRow
कंपोज़ेबल जोड़ें, जो अपनी सीमाओं से बाहर फ़िट होने वाले आइटम के ओवरफ़्लो को मैनेज करता है. (I742bd) - तारीख डालने के मोड पर स्विच करते समय फ़ोकस का अनुरोध करने के लिए,
DatePicker
औरDateRangePicker
एपीआई को अपडेट करें. हमनेrequestFocus
बूलियन पैरामीटर कोfocusRequester
पैरामीटर से बदल दिया है. यह पैरामीटर वैकल्पिक है औरFocusRequester
लेता है. (I14b69) - डिफ़ॉल्ट रूप से क्लिक किए जा सकने वाले और टॉगल किए जा सकने वाले आइटम से, मॉडिफ़ायर और इंटरैक्शन सोर्स हटाएं. इसके बजाय, इसे लागू करने से जुड़ी जानकारी के तौर पर इस्तेमाल करें. (I95ed6)
- स्क्रीन पर बहुत ज़्यादा बटन होने पर,
ButtonGroup
को ड्रॉपडाउन मेन्यू में बदलने की सुविधा जोड़ी गई है. (I7b88b)
गड़बड़ियां ठीक की गईं
- Bottomsheet अब टॉप इनसेट का इस्तेमाल करता है, जब वह मौजूदा ऑफ़सेट से छोटा होता है. इससे उपयोगकर्ताओं को, बड़े किए गए व्यवहार के लिए टॉप इनसेट उपलब्ध कराने की अनुमति मिलती है.
BottomSheetDefaults.windowInsets
में अबWindowInsets.safeDrawing.Top
शामिल है. (I0ab67, b/321877275, b/336962418, b/342093067) - चिप में मौजूद लीडिंग आइकॉन/अवतार और ट्रेलिंग आइकॉन के लिए, जोड़ने या हटाने पर फ़ेड/स्लाइड वाले ऐनिमेशन चालू किए गए. इससे मुख्य रूप से, चुने जा सकने वाले चिप (फ़िल्टर, इनपुट) को फ़ायदा मिलता है. हालांकि, यह सुविधा आम तौर पर लागू होती है. (I9af21)
LookaheadScope
की वजह से, आरटीएल स्लाइडर के काम न करने की समस्या को ठीक किया गया. (Ieb152, b/408118041)- सिस्टम यूज़र इंटरफ़ेस (यूआई) को छिपाकर स्क्रोल करने से जुड़ी, बॉटम
AppBar
क्रैश की समस्या ठीक की गई. (Ic6140, b/405996228)
वर्शन 1.4.0-alpha12
9 अप्रैल, 2025
androidx.compose.material3:material3-*:1.4.0-alpha12
रिलीज़ हो गया है. वर्शन 1.4.0-alpha12 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
ModalBottomSheetProperties
(Iab97f, b/362539765) से Android के लिए खास पैरामीटर हटा दिए गए हैं- ड्रैग हैंडल के साइज़ के डिफ़ॉल्ट के लिए ओवरलोडिंग फ़ंक्शन जोड़े गए (I0ed0d)
- नए लेआउट टाइप के लिए, नए
NavigationSuiteScaffold
औरNavigationSuiteScaffoldLayout
फ़ंक्शन जोड़े गए हैं. साथ ही, प्राइमरी ऐक्शन के लिए वैकल्पिक कॉन्टेंट जोड़ने की सुविधा जोड़ी गई है. (Ib262a, b/353144478) ButtonGroup
में फ़िल पैरामीटर के साथModifier.weight
को बंद कर दिया गया है. बिना फ़िल किए गए वर्शन को जोड़ना. (Id32bb)xSmall-
औरxLarge-
IconButton कॉम्पोनेंट के डिफ़ॉल्ट नाम बदलकरextra
कर दिए गए हैं. (Ib6e0f)- नए लेआउट टाइप के साथ काम करने के लिए, नए
NavigationSuite
,NavigationSuiteItem
, औरNavigationSuiteColors
फ़ंक्शन जोड़े गए हैं. (I203d6) - नए
NavigationSuiteTypes
औरnavigationSuiteType
फ़ंक्शन जोड़ें, जिनमें लेआउट के वे विकल्प शामिल हों (If68f9)
गड़बड़ियां ठीक की गईं
ColorScheme.contentColorFor
अबsurfaceDim
कोonSurface
पर मैप करता है. (I8891a)DateInputTextField
को अपडेट किया गया है. इससे उस समस्या को ठीक किया जा सकेगा जिसमें इनपुट फ़ील्ड में, प्रोग्राम के हिसाब से सेट की गई तारीख नहीं दिखती थी. (I6c8d1, b/401143451)- नेविगेशन रेल और वाइड नेविगेशन रेल के लिए, TalkBack के फ़ोकस का क्रम ठीक किया गया (I6cf6f, b/407048224)
वर्शन 1.4.0-alpha11
26 मार्च, 2025
androidx.compose.material3:material3-*:1.4.0-alpha11
रिलीज़ हो गया है. वर्शन 1.4.0-alpha11 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- बटन और टॉगल बटन के लिए, डिफ़ॉल्ट ऑब्जेक्ट में कंपोज़ेबल प्रॉपर्टी के लिए कैपिटल लेटर अपडेट किए गए. कंटेनर की ऊंचाई के हिसाब से, कॉन्टेंट पैडिंग, शेप, आइकॉन का साइज़, आइकॉन के बीच की दूरी, और टेक्स्ट स्टाइल के लिए,
ToggleButtonDefaults
औरButtonDefaults
में तरीके जोड़ें. (Iea69e) FloatingToolbar
से, एक्सपेरिमेंट के तौर पर उपलब्ध ऐसे फ़ंक्शन और कॉन्स्टेंट हटा दिए गए हैं जिनका इस्तेमाल अब नहीं किया जा सकता. (I8f339)- एलिवेशन कॉम्पोनेंट अब एक सामान्य इंटरफ़ेस शेयर करते हैं. साथ ही, इनमें सार्वजनिक कंस्ट्रक्टर और प्रॉपर्टी होती हैं. (Ibb172)
animateWidth
मेंanimateWidth
मॉडिफ़ायर जोड़ा गया है. इसका इस्तेमाल बटन ग्रुप के बच्चों के साथ करना होगा, ताकि बच्चों को सही तरीके से ऐनिमेट किया जा सके.ButtonGroupScope
(Ia3bb6)
गड़बड़ियां ठीक की गईं
- फ़्लोटिंग टूलबार की पैडिंग को ठीक किया गया है, ताकि छोटा होने पर भी विज़ुअल बैलेंस बना रहे. साथ ही, बड़े कॉन्टेंट के लिए ज़्यादा फ़्लेक्सिबिलिटी दी गई है. (I06c00)
वर्शन 1.4.0-alpha10
12 मार्च, 2025
androidx.compose.material3:material3-*:1.4.0-alpha10
रिलीज़ हो गया है. वर्शन 1.4.0-alpha10 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
TabRowDefaults.tabIndicatorOffset
की जगह अबTabIndicatorScope.tabIndicatorOffset
का इस्तेमाल किया जाता है. (Ib36b3)- बटन के डिफ़ॉल्ट में, कॉन्टेंट के लिए कम पैडिंग की टाइपिंग से जुड़ी गड़बड़ी ठीक की गई. (I19bfe)
TabRow
औरScrollableTabRow
अब काम नहीं करते. इनकी जगह, हर एक के प्राइमरी और सेकंडरी वैरिएंट का इस्तेमाल किया जाता है. प्राइमरी और सेकंडरी टैब की लाइनें, स्पेसिफ़िकेशन के मुताबिक ज़्यादा सटीक और बेहतर तरीके से काम करती हैं. (I918e2)rememberSliderState
औरrememberRangeSliderState
को जोड़ा गया. (I8e384)- ऑटो-स्नैपिंग मैकेनिज़्म को कंट्रोल करने के लिए,
SliderState
मेंshouldAutoSnap
जोड़ा गया. इसे बंद करने से, कस्टम ऐनिमेशन के लिए फ़ायदा मिल सकता है. (I07745) - स्क्रोल की जा सकने वाली टैब लाइन में टैब की कम से कम चौड़ाई अब एक पैरामीटर है. प्राइमरी और सेकंडरी टैब की लाइन के वैरिएंट अब एक्सपेरिमेंट के तौर पर उपलब्ध नहीं हैं. (If6f15, b/226665301)
- क्लास
ExitAlwaysFloatingToolbarScrollBehavior
को सार्वजनिक कर दिया गया है. इससे कंपोज़िशन के बिना क्लास बनाई जा सकती है. (Ibf31c)
वर्शन 1.4.0-alpha09
26 फ़रवरी, 2025
androidx.compose.material3:material3-*:1.4.0-alpha09
रिलीज़ हो गया है. वर्शन 1.4.0-alpha09 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- डिफ़ॉल्ट स्थिति में
DragHandle
के सेटिंग फ़ील्ड का नाम बदलें; दबाए गए और खींचे गए स्टेटस को अलग-अलग करें; डिफ़ॉल्ट साइज़ को सार्वजनिक करें. (I787b9) TowRowsTopAppBar
API से जुड़े अपडेट.expanded
लैंबडा पैरामीटर को हटा दिया गया है. साथ ही, एक्सपैंड और कोलैप्स की गई ऊंचाई के लिए अलग-अलग पैरामीटर जोड़े गए हैं. (Idd677, b/306697446, b/229134133, b/268068946)
गड़बड़ियां ठीक की गईं
- सबसे नीचे मौजूद ऐप्लिकेशन बार अब टच एक्सप्लोरेशन सेवा का इस्तेमाल करते हैं. जैसे,
TalkBack
) और सेवा चालू होने पर उन्हें हमेशा दिखने दें. (I4b34d)
वर्शन 1.4.0-alpha08
12 फ़रवरी, 2025
androidx.compose.material3:material3-*:1.4.0-alpha08
रिलीज़ हो गया है. वर्शन 1.4.0-alpha08 में ये कमिट शामिल हैं.
नई सुविधाएं
TimePickerDialog
एपीआई जोड़ा गया है. इसका इस्तेमालTimePicker
,TimeInput
या स्विच किए जा सकने वाले वर्शन के लिए किया जा सकता है. (Id2d83)खोज बार के लिए नए एपीआई:
- कोलैप्स किए गए सर्च बार और बड़े किए गए सर्च "व्यू" अब अलग-अलग कंपोज़ेबल हैं.
SearchBar
से खोज बार को छोटा करके दिखाया गया है.ExpandedFullScreenSearchBar
औरExpandedDockedSearchBar
, खोज बार को बड़ा करके दिखाने के लिए इस्तेमाल किए जाते हैं. ये नई विंडो में खुलते हैं.SearchBarState
का इस्तेमाल करके, खोज बार की स्थिति को कंट्रोल करनाTopSearchBar
का इस्तेमाल करके, इनसेट हैंडलिंग और स्क्रोल करने के तरीके को जोड़ा जा सकता हैInputField
का नया ओवरलोड, जोSearchBarState
का इस्तेमाल करता है (Ie0723, b/261496232, b/283311462, b/350916229, b/352872248)
एपीआई में हुए बदलाव
- बटन दबाने पर, आइकॉन बटन के कॉर्नर के आकार में बदलाव करने की सुविधा. (I21843)
- टेक्स्ट फ़ील्ड डेकोरेटर/डेकोरेशन बॉक्स एपीआई अब एक्सपेरिमेंटल नहीं हैं. (I31d95)
ButtonGroup
के लिए, कनेक्ट किए गए वैरिएंट के सैंपल और डिफ़ॉल्ट वैल्यू जोड़ी गई हैं. (I5c8ce)NavigationSuiteScaffold
औरNavigationSuiteScaffoldLayout
में, state पैरामीटर को आखिरी पैरामीटर के तौर पर सेट करें. (I9cc7b)
गड़बड़ियां ठीक की गईं
FloatingToolbars
में सुलभता से जुड़ी कस्टम कार्रवाइयां जोड़ी गईं, ताकि सुलभता सेवाएं अबFloatingToolbar
के सभी वर्शन को बड़ा या छोटा कर सकें. एफ़एबी वाले वर्शन में, इसे एफ़एबी पर लागू किया जाता है. वहीं, एफ़एबी के बिना वाले वर्शन में, इसे मुख्य कॉन्टेंट पर लागू किया जाता है. (I26420)FloatingToolbars
अब टच एक्सप्लोरेशन सेवा का इस्तेमाल करते हैं. जैसे, TalkBack) का इस्तेमाल करते हैं, तो टूलबार को बड़ा करके रखें, ताकि सेवा चालू होने पर वह हमेशा दिखता रहे. (I02172)- अगर प्रोग्रेस के तौर पर
Float.NaN
पास किया जाता है, तो प्रोग्रेस और लोडिंग इंडिकेटर में क्रैश होने की समस्या को ठीक किया गया है. (I4fa96, b/352364576)
वर्शन 1.4.0-alpha07
29 जनवरी, 2025
androidx.compose.material3:material3-*:1.4.0-alpha07
रिलीज़ हो गया है. वर्शन 1.4.0-alpha07 में ये कमिट शामिल हैं.
नई सुविधाएं
- नए एपीआई की मदद से, चेकबॉक्स के दिखने के तरीके को अपनी पसंद के मुताबिक बनाने की सुविधा जोड़ी गई है. यह एपीआई, स्ट्रोक पैरामीटर उपलब्ध कराता है. इनकी मदद से, चेक मार्क और चेकबॉक्स-आउटलाइन को रेंडर करने के तरीके पर ज़्यादा कंट्रोल पाया जा सकता है. (I65a88)
- दो लाइनों वाले टॉप ऐप्लिकेशन बार बनाने के लिए,
TwoRowsTopAppBar
एपीआई जोड़ा गया है. यह मीडियम और लार्ज ऐप्लिकेशन बार का ज़्यादा पसंद के मुताबिक बनाया जा सकने वाला विकल्प है. डेवलपर के पास अब टाइटल और सबटाइटल के कॉन्टेंट को कंट्रोल करने का विकल्प है. वे यह तय कर सकते हैं कि टाइटल और सबटाइटल, छोटे किए गए वर्शन में कैसे दिखेंगे और बड़े किए गए वर्शन में कैसे दिखेंगे. साथ ही, वे हर वर्शन के लिए टाइटल और सबटाइटल की ऊंचाई को अपनी पसंद के मुताबिक सेट कर सकते हैं. (I0be3c, b/306697446, b/229134133, b/268068946)
एपीआई में हुए बदलाव
- एक्सपेरिमेंट के तौर पर उपलब्ध
BottomAppBar
वर्शन का नाम बदलकरFlexibleBottomAppBar
कर दिया गया है. इससे कॉन्टेंट को व्यवस्थित करने और उसकी ऊंचाई को कंट्रोल करने के ज़्यादा विकल्प मिलते हैं. (Iaa448) - बटन ग्रुप के डिफ़ॉल्ट ऑब्जेक्ट में मौजूद प्रॉपर्टी के नाम को
CapitalCase
के तौर पर अपडेट करें.animateFraction
का नाम अपडेट करें, ताकि यह उस व्यवहार को ज़्यादा सटीक तरीके से दिखा सके जिसके लिए इसे बनाया गया है. (I545cd) - सामान्य बटन के लिए ओवरलोड जोड़े गए हैं. इससे बटन दबाने पर, ऐनिमेटेड शेप का इस्तेमाल किया जा सकेगा. कैश किए गए बटन के आकार जोड़े गए. (I5ec20)
- अब
FloatingToolbarScrollBehavior
उपलब्ध कराकर, यह कंट्रोल किया जा सकता है कि स्क्रोल करने पर, FAB के साथFloatingToolbar
कैसा व्यवहार करे. अगर टूलबार को बीच की किसी किनारे पर रखा गया है (जैसे, ऊपर या नीचे के बीच में), तो हमारा सुझाव है कि स्क्रोल करने के दौरान पूरे कॉम्पोनेंट को छिपाने के लिए, स्क्रोल करने की सुविधा का इस्तेमाल करें. इससे टूलबार ज़्यादा साफ़ दिखेगा. इससे FAB को बीच में न होने से भी रोका जा सकता है. ऐसा तब हो सकता है, जब फ़ोल्ड करने के लिएexpanded
फ़्लैग का इस्तेमाल किया जा रहा हो. (I33f67) - टाइटल और सबटाइटल का अलाइनमेंट सेट करते समय, कस्टम
TopAppBarTitleAlignment
के बजायAlignment.Horizontal
का इस्तेमाल करने के लिए, एक्सपेरिमेंटलTopAppBar
एपीआई अपडेट करता है. (I70ca2) SliderState#onValueChange
अब सार्वजनिक तौर पर उपलब्ध है, ताकि उपयोगकर्ता को ज़्यादा कंट्रोल मिल सके (I104eb)- नेविगेशन कॉम्पोनेंट को ऐनिमेट करने के लिए,
NavigationSuiteScaffoldState
को शामिल करें. साथ ही,NavigationSuiteScaffold
औरNavigationSuiteScaffoldLayout
के ऐसे ओवरलोड भी शामिल करें जिनमें स्टेट पैरामीटर होता है. (I6a8c9, b/328674235)
गड़बड़ियां ठीक की गईं
IconButtonColors
औरIconToggleButtonColors
क्लास कोIconButtonDefaults.kt
से वापसIconButton.kt
में ले जाएं. (I3c233)
बाहरी योगदान
SliderState#isDragging
अब सभी के लिए उपलब्ध है. (I8458a)
वर्शन 1.4.0-alpha06
15 जनवरी, 2025
androidx.compose.material3:material3-*:1.4.0-alpha06
रिलीज़ हो गया है. वर्शन 1.4.0-alpha06 में ये कमिट शामिल हैं.
व्यवहार में बदलाव
- हमने
displayCutout
को इनसेट के उस ग्रुप में जोड़ा है जिसे Material कॉम्पोनेंट डिफ़ॉल्ट रूप से ध्यान में रखते हैं, ताकि कॉन्टेंट, डिसप्ले कटआउट के साथ ओवरलैप न हो. यह व्यवहार में होने वाला बदलाव है. इससे, डिसप्ले कटआउट के आस-पास मौजूद इंसर्ट-अवेयर कॉम्पोनेंट के काम करने के तरीके पर असर पड़ेगा. इसमें, Material 3 कॉम्पोनेंट के लिएWindowInsets
पैरामीटर की डिफ़ॉल्ट वैल्यू शामिल है. साथ ही, Material 2 और Material 3, दोनों के लिए कॉम्पोनेंट के डिफ़ॉल्ट ऑब्जेक्ट में दी गईWindowInsets
वैल्यू भी शामिल हैं. अगर इस बदलाव की वजह से कोई समस्या होती है, तो हर कॉम्पोनेंट के लिएWindowInsets
पैरामीटर को मैन्युअल तरीके से सेट करें. (I43ee9, b/362508045)
एपीआई में हुए बदलाव
TopAppBar
API से जुड़े अपडेट. मीडियम और बड़े टॉप ऐप्लिकेशन बार का नाम बदलकर*FlexibleTopAppBar
कर दिया गया है. रंग के अलग-अलग वैरिएंट को एक हीTopAppBarDefault.topAppBarColors()
फ़ंक्शन में शामिल किया गया है. साथ ही, दिए गए सबटाइटल कंपोज़ेबल (I41b65) के लिए,subtitle
कलर पैरामीटर जोड़ा गया हैArrangement.Vertical
के बजायWideNavigationRailArrangement
API का इस्तेमाल करना (Id0341)- कोई नया
VerticalSlider @Composable
जोड़ें. (I2bfba) - नया ट्रैक
@Composable
जोड़ा गया है. इससे कस्टम बाहरी ट्रैक कॉर्नर और ट्रैक आइकॉन तय किए जा सकते हैं. (I436a4) - फ़्लोटिंग टूलबार एपीआई को अपडेट करें, ताकि वे कंटेनर के एक रंग के बजाय
FloatingToolbarColors
ऑब्जेक्ट का इस्तेमाल कर सकें. (I9a054) - एक्सपेरिमेंट के तौर पर उपलब्ध नई एनोटेशन सुविधा
ExperimentalMaterial3ComponentOverrideApi
(Ia1eaf) को जोड़ना और उसका इस्तेमाल करना Modifier.indicatorLine
अब टेक्स्ट फ़ील्ड के लिए एक शेप लेता है, ताकि क्लिपिंग को मैनेज किया जा सके. (I8c5f3, b/380704151)- एक्सपेरिमेंट के तौर पर उपलब्ध
FloatingAppBar
फ़ंक्शन के नाम बदलकरFloatingToolbar
कर दिए गए हैं (I1dbf8) - एक नया
floatingToolbarVerticalNestedScroll
जोड़ा गया है. इसे स्क्रोल किए जा सकने वाले कंटेनर से अटैच किया जा सकता है. इससे, थ्रेशोल्ड पार करने वाले स्क्रोल मोशन के आधार पर, फ़्लोटिंग टूलबार की एक्सपैंशन स्थिति को अपडेट किया जा सकता है. (I6d65f) - पेश है फ़्लोटिंग टूलबार बनाने के लिए नया एपीआई. इसमें फ़्लोटिंग ऐक्शन बटन (एफ़एबी) अटैच किया गया है. इस एपीआई में, ज़रूरत के हिसाब से बदलाव करने के कई विकल्प मिलते हैं. इनकी मदद से, टूलबार को हॉरिज़ॉन्टल या वर्टिकल तौर पर व्यवस्थित किया जा सकता है. साथ ही, FAB को टूलबार की शुरुआत या आखिर में रखा जा सकता है. (I9e350)
गड़बड़ियां ठीक की गईं
- Snackbar की सुलभता से जुड़ी समस्या को ठीक किया गया है. इस समस्या की वजह से,
TalkBack
चालू होने पर Snackbar खारिज होने पर खुद ही सूचना देता था. (/I9db53)
बाहरी योगदान
- इसे फ़ाउंडेशन में
BasicTooltip
और Material3 मेंBasicTooltip/Tooltip
के तौर पर इस्तेमाल किया जाता है. (Ifc2e6)
वर्शन 1.4.0-alpha05
12 दिसंबर, 2024
androidx.compose.material3:material3-*:1.4.0-alpha05
रिलीज़ हो गया है. वर्शन 1.4.0-alpha05 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- बेहतर तरीके से पढ़ने के लिए, किसी सूची के लिए
WideNavigationRailState.current/target
वैल्यू में टाइप बदलें (I2d6ab) SplitButton
बाइनरी कंपैटबिलिटी के लिए, Shape API को डेटा क्लास से क्लास में बदलें. (I53812)- टूलटिप एपीआई जोड़ा गया है. इसमें
onDismissRequest
पैरामीटर है, ताकि मेकर यह तय कर सकें कि जब कोई उपयोगकर्ता टूलटिप के बाहर क्लिक करता है, तो क्या होता है. हमने उस पुराने एपीआई को बंद कर दिया है जिसमें यह नया पैरामीटर शामिल नहीं है. (I99aef) opticalCentering
का नाम बदलकरhorizontalCenterOptically
किया गया. मॉडिफ़ायर को इंटरनल बनाना. पैडिंग पैरामीटर को ज़्यादा से ज़्यादा स्टार्ट और एंड ऑफ़सेट से बदलें. (I0b904)WideNavigationRailState
को बदलकर मौजूदा/टारगेट वैल्यू करें. साथ ही, बूलियन के पक्ष में इनम हटाएं. (Idfa29, b/356039090)NavigationBarItemComponentOverride
जोड़ें. (I3a06a)
गड़बड़ियां ठीक की गईं
- ऊपर और नीचे मौजूद ऐप्लिकेशन बार के व्यवहार को ठीक किया गया है, ताकि कॉन्टेंट को पूरी तरह से स्क्रोल करने पर, रंग में बदलाव हो सके. (Idc4e8, b/293665988)
- स्क्रोल करने के तरीके से जुड़े फ़ंक्शन, अब सबसे ऊपर और सबसे नीचे मौजूद ऐप्लिकेशन बार के लिए, याद रखे गए तरीके को दिखाते हैं. इससे, रीकंपोज़िशन के दौरान बेहतर परफ़ॉर्मेंस मिलती है. (I0fdbe, b/207957336)
- अब मॉडिफ़ायर पैरामीटर को, इंटरनल मॉडिफ़ायर के बाद लागू किया जाता है. जैसे, खींचने का तरीका और सिमैंटिक. पहले इसे इंटरनल मॉडिफ़ायर से पहले लागू किया जाता था. इससे, मॉडिफ़ायर लागू करने के क्रम पर असर पड़ता है. (I8d83f)
- बॉटम शीट का साइज़ बदलने पर भी, वह बड़ी ही रहती है. (I2870b, b/324934884)
- विंडोज़ प्रॉपर्टी के लिए, स्टेटस और नेविगेशन बार के फ़्लैग को सही तरीके से रूट करना. (Ie674d, b/362539765)
- मॉडिफ़ायर पैरामीटर को, दस्तावेज़ में बताए गए तरीके के मुताबिक, स्कैफ़ोल्ड के रूट में ले जाएं. इससे M2 के साथ इंटिग्रेशन किया जा सकेगा. (I0235e, b/372311595)
बाहरी योगदान
DatePickerDialog
फ़ंक्शन को सामान्य बनाया गया. (I7dced)
वर्शन 1.4.0-alpha04
13 नवंबर, 2024
androidx.compose.material3:material3-*:1.4.0-alpha04
रिलीज़ हो गया है. वर्शन 1.4.0-alpha04 में ये कमिट शामिल हैं.
व्यवहार में बदलाव
- aosp/3212478 में किए गए रंग के बदलावों को
iconButtonColors
,iconToggleButtonColors
,outlinedIconButtonColors
,outlinedIconToggleButtonColors
, औरoutlinedIconToggleButtonBorder
पर वापस लाएं. अब वापस लाए गए व्यवहार कोiconButtonVibrantColors
जैसे फ़ंक्शन के नए सेट में ले जाया गया है, ताकि ज़्यादा कंट्रास्ट वाले रंगों को हाइलाइट किया जा सके. (Iffd8d)
नई सुविधाएं
VerticalDragHandle
कॉम्पोनेंट (I6c770) जोड़ें
एपीआई में हुए बदलाव
DismissibleModalWideNavigationRailDefaults
का नाम बदलकरModalWideNavigationRailDefaults
करें. (I8e877)NavigationBarComponentOverrides
जोड़ें. (I8a3f3)NavigationRailComponentOverride
जोड़ें. (I83e13)- रेल को छोटा/बड़ा करने के लिए
WideNavigationRailState
को शामिल किया गया है. साथ ही,ModalWideNavigationRail
को खारिज करने की अनुमति दी गई है औरDismissibleModalWideNavigationRail
को मिटा दिया गया है. (I88568) - टॉगल बटन के डिफ़ॉल्ट साइज़ में, xSmall, medium, large, और xLarge साइज़ के डिफ़ॉल्ट साइज़ जोड़ें. (Ie95d1)
- बटन के डिफ़ॉल्ट साइज़ में, xSmall, medium, large, और xLarge साइज़ के डिफ़ॉल्ट जोड़ें. (If8b6d)
गड़बड़ियां ठीक की गईं
- फ़िल्टर चिप के ट्रेलिंग आइकॉन के रंग को स्पेसिफ़िकेशन के मुताबिक, प्राइमरी से
OnSurfaceContainer
में अपडेट कर दिया गया है. सभी चिप की आउटलाइन के रंगों को स्पेसिफ़िकेशन के मुताबिक, आउटलाइन से आउटलाइन वैरिएंट में अपडेट कर दिया गया है. (I68bd4)
वर्शन 1.4.0-alpha03
30 अक्टूबर, 2024
androidx.compose.material3:material3-*:1.4.0-alpha03
रिलीज़ हो गया है. वर्शन 1.4.0-alpha03 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
SheetState
कंस्ट्रक्टर में डेंसिटी का इस्तेमाल अब नहीं किया जा सकता. इसके बजाय, पोज़िशनल और वेलोसिटी थ्रेशोल्ड का इस्तेमाल किया जा सकता है. (Ifd16e)- अपडेट किए गए पोज़िशनिंग लॉजिक वाला
rememberTooltipPositionProvider
जोड़ा गया.rememberPlainTooltipPositionProvider
औरrememberRichTooltipPositionProvider
अब सेवा में नहीं हैं. (Ie66e2) - अतिरिक्त
ModalBottomSheetProperties
की मदद से, स्टेटस और नेविगेशन बार के रंगों को पसंद के मुताबिक बनाया जा सकता है. डिफ़ॉल्ट रूप से, ये सिस्टम की डार्क थीम की स्थिति के बजाय, कॉन्टेंट के रंग के हिसाब से अपडेट होते हैं. (Ib874e, b/362539765) - तारीख चुनने वालों के लिए इनपुट का अनुभव बेहतर बनाया गया है: इनपुट मोड में होने पर, तारीख के टेक्स्ट फ़ील्ड पर फ़ोकस किया जाएगा, ताकि तुरंत टेक्स्ट डाला जा सके. इस बदलाव से,
DatePicker
औरDateRangePicker
मेंrequestFocus
पैरामीटर जुड़ जाता है.false
पास करके, फ़ोकस को रोका जा सकता है. (I12d09, b/286399710, b/340102743) - शेप ऑब्जेक्ट में, शेप की डिफ़ॉल्ट सेटिंग को कैश मेमोरी में सेव किया जाता है. टॉगल बटन के लिए, शेप को डिफ़ॉल्ट तौर पर
@Composable
पर सेट किया जाता है. शेप को एक डिफ़ॉल्ट शेप में छोटा किया जा रहा है, क्योंकि वेरिएंट एक ही टोकन फ़ाइल की ओर इशारा करते हैं. (Iaa014)
गड़बड़ियां ठीक की गईं
- Optimize Scaffold
contentPadding
के व्यवहार को ऑप्टिमाइज़ करें, ताकिcontentPadding
में बदलाव होने पर, बॉडी कॉन्टेंट को हमेशा फिर से कंपोज़ न करना पड़े. (I8c8e2, b/373904168) TextFieldLabelScope
progress
का नाम बदलकरlabelMinimizedProgress
कर दिया गया हैTextFieldLabelPosition
Default
का नाम बदलकरAttached
कर दिया गया है. इंटरफ़ेस के सदस्यों को हटा दिया गया है. (If75c6)- इनपुट मोड में
DatePicker
से जुड़ी समस्या को ठीक किया गया है. इसमें पुष्टि करने से जुड़ी गड़बड़ियों की वजह से, कॉम्पोनेंट की ऊंचाई बदल सकती थी. (I2e229, b/280462363) - कंट्रोल बटन दबाने पर, स्लाइडर की वैल्यू में बदलाव करें. (I1c442)
वर्शन 1.4.0-alpha02
16 अक्टूबर, 2024
androidx.compose.material3:material3-*:1.4.0-alpha02
रिलीज़ हो गया है. वर्शन 1.4.0-alpha02 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- तारीख चुनने वाले टूल को अपडेट किया गया है. इससे यह पक्का किया जा सकेगा कि
DatePickerState
याDateRangePickerState
के ज़रिए सीधे तौर पर कोई स्थान-भाषा सेट करते समय,DatePicker
औरDateRangePicker
में एक ही स्थान-भाषा का इस्तेमाल किया जाए. ध्यान दें कि सीधे तौर पर राज्य के लिए स्थानीय भाषाएं सेट करते समय, यह आपकी ज़िम्मेदारी है कि टाइटल और हेडलाइन के टेक्स्ट को उसी के हिसाब से स्थानीय भाषा में बदला जाए. ऐसा इसलिए, क्योंकि डिफ़ॉल्ट प्लैटफ़ॉर्म की स्थानीय भाषा के हिसाब से ही डिफ़ॉल्ट टेक्स्ट लागू होगा. (I37073, b/326490763, b/321657276) SheetState.isAnimationRunning
अब दिखने लगा है. (I9a3d7)DatePickerColors
अब थीम की टाइपोग्राफ़ी टेक्स्ट स्टाइल में तय किए गए किसी भी मिलते-जुलते रंग के मुकाबले, ज़्यादा प्राथमिकता रखते हैं. यह भी ध्यान दें कि इस अपडेट में, तारीख चुनने वाले फ़ंक्शन मेंcolor
पैरामीटर की पोज़िशन को अडजस्ट किया गया है. साथ ही, हेडर और टाइटल के टेक्स्ट के रंगों को पसंद के मुताबिक बनाने के लिए,contentColor
पैरामीटर जोड़ा गया है. (I30d03, b/347031394)SplitButton
का नाम बदलकरSplitButtonLayout
कर दिया जाएगा. साथ ही,SplitButton
के रंग के वैरिएंट वाले एपीआई हटा दिए जाएंगे. वैरिएंट कोSplitButtonDefaults
की ओर से उपलब्ध कराए गए बटन वैरिएंट का फिर से इस्तेमाल करके हासिल किया जाएगा. (I44c36)ModalBottomSheet
में अबsheetGestureEnabled
पैरामीटर (I856cb, b/288211587) हैstandardMotionScheme
औरexpressiveMotionScheme
का नाम बदलकर स्टैंडर्ड और एक्सप्रेसिव कर दिया गया है. अब दोनों फ़ंक्शन कोMotionScheme
कंपैनियन ऑब्जेक्ट के ज़रिए ऐक्सेस किया जा सकता है. इसके लिए,MotionScheme.standard()
औरMotionScheme.expressive()
को कॉल करें. (Iceccf)- सामान्य और रिच टूलटिप में
maxWidth
पैरामीटर जोड़ा गया है. सामान्य टूलटिप के लिए, यह डिफ़ॉल्ट रूप से 200 dp और रिच टूलटिप के लिए 320 dp के डिज़ाइन स्पेसिफ़िकेशन पर सेट होता है. (I30ce9)
गड़बड़ियां ठीक की गईं
DatePicker
औरDateRangePicker
अब अपनी स्थिति केdisplayedMonthMillis
के ज़रिए सेट किए जाने पर, दिखाए गए महीने को सही तरीके से अपडेट करते हैं. (If9e47, b/333414302)ModalBottomSheet
कॉन्टेंट अब स्टेटस बार से कॉन्टेंट को दूर ले जाता है. (I5114c, b/321877275, b/336962418, b/342093067)- [बॉटम शीट] IME कीबोर्ड को पहले बंद करने की अनुमति देने के लिए, वापस कॉल करने की प्राथमिकता को
PRIORITY_DEFAULT
पर वापस सेट करें. (I447fb) - जब कम से कम चुने जा सकने वाले साल को आने वाले साल के लिए सेट किया जाता है, तब
DatePicker
औरDateRangePicker
में क्रैश होने की समस्या ठीक की गई. (I78656, b/319395747) - तारीख चुनने वाले कंट्रोल से जुड़ी समस्या को ठीक किया गया है, ताकि अपडेट किए गए
SelectableDates
इंस्टेंस को लागू करने पर यूज़र इंटरफ़ेस (यूआई) अपडेट हो जाए. (Iad59a, b/290135807, b/339898760)
वर्शन 1.4.0-alpha01
2 अक्टूबर, 2024
androidx.compose.material3:material3-*:1.4.0-alpha01
रिलीज़ हो गया है. वर्शन 1.4.0-alpha01 में ये कमिट शामिल हैं.
व्यवहार में बदलाव
- लाइब्रेरी अब
material-icons-core
पर डिपेंडेंसी नहीं जोड़ती है. इसलिए, अगर आपका प्रोजेक्ट उस पर निर्भर था, तो आपको अपनीbuild.gradle[.kts]
फ़ाइलों में उस डिपेंडेंसी को साफ़ तौर पर जोड़ना होगा. (I735ff, b/349894318) NavigationBarItem
औरNavigationRailItem
के ऐक्टिव लेबल का रंग, इस्तेमाल करने में आसानी, कलर कंट्रास्ट, और सिस्टम में एकरूपता (Ibc297) को बेहतर बनाने के लिए,onSurface
सेsecondary
में बदल गया है. पहले जैसा करने के लिए, डिफ़ॉल्ट रंगों को कॉपी करें औरselectedTextColor
कोMaterialTheme.colorScheme.onSurface
में बदलें.- Material 3 कॉम्पोनेंट अब मोशन तय करने के लिए, नए
MotionScheme
का इस्तेमाल कर रहे हैं. (Ie0f93) - सर्कुलर प्रोग्रेस इंडिकेटर की मोशन में बदलाव (I3c07e)
- बेहतर कलर कंट्रास्ट के लिए,
OutlinedIconButtonColors
औरOutlinedIconToggleButtonColors
को अपडेट करें. (I2743d) FilledIconToggleButtonColors
औरFilledTonalIconToggleButtonColors
के लिए, कंटेनर और कॉन्टेंट का रंग अपडेट किया गया. (Ic5d0f)OutlinedButton
के बॉर्डर का रंग,outline
से बदलकरoutlineVariant
कर दिया गया है. (057f00)
एपीआई में हुए बदलाव
TopAppBar
केenterAlwaysScrollBehavior
फ़ंक्शन में एक वैकल्पिकreverseLayout
पैरामीटर जोड़ा गया है, ताकिreverseLayout
के साथ सेट किए गए कॉन्टेंट को बेहतर तरीके से सपोर्ट किया जा सके. (I4e0e5)SegmentedButton
अबcontentPadding
आर्ग्युमेंट के साथ काम करता है. (I5ad91, b/358414376)PullToRefreshState
में अबisAnimating
(I6a593) के लिए डिफ़ॉल्ट सेटिंग लागू नहीं होती- Material
TextField
औरOutlinedTextField
के नए ओवरलोड जोड़े गए हैं. येTextFieldState
का इस्तेमाल करते हैं. डेकोरेशन बॉक्स वाले ऐसे एपीआई जोड़े गए हैं जोTextFieldDecorator
के साथ काम करते हैं. (If13a1) - कंट्रोल टेक्स्ट फ़ील्ड के
labelPosition
में पैरामीटर जोड़ा गया.alwaysMinimize
का इस्तेमाल करने पर, टेक्स्ट फ़ील्ड में लेबल और प्लेसहोल्डर को एक साथ दिखाया जा सकता है. ऐसा तब भी किया जा सकता है, जब फ़ील्ड पर फ़ोकस न किया गया हो. (I1ef2c) - पासवर्ड डालने के फ़ील्ड के लिए, Material
SecureTextField
औरOutlinedSecureTextField
जोड़े गए. (I7e22d) - ऐनिमेशन की प्रोग्रेस के बारे में क्वेरी करने के लिए, टेक्स्ट फ़ील्ड के लेबल में स्कोप जोड़ा गया. (If5ec8)
- टूलटिप में
MotionEvent.CLASSIFICATION_DEEP_PRESS
के काम करने की सुविधा जोड़ी गई है. (I62e6a) TimePickerState
काisAfternoon
अब इंटरफ़ेस में var के बजाय एक्सटेंशन वैल्यू है. इसका नाम बदलकरisPm
(I89a97) कर दिया गया है- टाइपोग्राफ़ी क्लास को अपडेट किया गया है, ताकि फ़ोकस किए गए टाइप स्केल को सपोर्ट किया जा सके. (Ifa13c)
ModalWideNavigationRail
एपीआई जोड़ा गया औरModalExpandedNavigationRail
एपीआई का नाम बदलकरDismissibleModalWideNavigationRail
कर दिया गया. (Ic9118)FloatingAppBarScrollBehavior
को अपडेट किया गया है, ताकि वहscreenOffset
की अपने-आप गणना कर सके और इसके लिए@Composable
की ज़रूरत न पड़े. (Idf349)LoadingIndicator
एपीआई में अपडेट किए गए हैं, ताकि डिफ़ॉल्ट ऑब्जेक्ट में नामकरण की समस्या को ठीक किया जा सके.LoadingIndicatorElevation
परPullToRefresh
कॉन्सटेंट जोड़ा गया. (I1d72b)LoadingIndicator
एपीआई में अपडेट किए गए हैं, ताकि डिफ़ॉल्ट ऑब्जेक्ट में नामकरण की समस्या को ठीक किया जा सके.LoadingIndicatorElevation
परPullToRefresh
कॉन्सटेंट जोड़ा गया. (I1d72b)LinearWavyProgressIndicator
औरCircularWavyProgressIndicator
के अनिश्चित वैरिएशन के लिए,amplitude
औरwaveSpeed
पैरामीटर जोड़े गए. (I2a0c5)- दबाए जाने या चुने जाने की स्थिति के आधार पर, आइकॉन टॉगल बटन के आकार को बदलने की सुविधा. (Ibc781)
- टाइपोग्राफ़ी क्लास को अपडेट किया गया है, ताकि फ़ोकस किए गए टाइप स्केल को सपोर्ट किया जा सके. (Ifa13c)
SplitButton
डिफ़ॉल्ट / दबाई गई स्थिति के आधार पर आकार बदलता है.AnimatedTrailingButton
एपीआई हटाया गया, क्योंकिTrailingButton
एपीआई एक जैसी सुविधाएं (I95066) दे सकता है- एफ़एबी को दिखाने और छिपाने को ऐनिमेट करने के लिए, मॉडिफ़ायर जोड़ें. उदाहरण के लिए, जब कॉन्टेंट स्क्रोल होता है. (I8338d)
ButtonGroupDefaults
में कनेक्ट किए गए बटन ग्रुप के आकार और स्पेसिंग को जोड़ना, ताकि इसका इस्तेमाल सैंपल में किया जा सके. (I68e30)- स्प्लिट बटन, ट्रेलिंग बटन के लिए हॉरिज़ॉन्टल पैडिंग जोड़ता है. साथ ही, यह ऑप्टिकल सेंटरिंग को चालू करता है. इसकी गणना, शुरुआती और आखिरी कोने के अंतर (I122e2) से की जाती है
- पेश है नया Material
MotionScheme
, ताकि कॉम्पोनेंट के मोशन के लिए स्कीम सेट की जा सके. इस स्कीम कोMaterialTheme
के ज़रिए सेट किया जाता है. (Id50c2)
गड़बड़ियां ठीक की गईं
Scaffold
चाइल्ड कंपोज़ेबल पर सही फ़ोकस ट्रैवर्सल इंडेक्स लागू करें. ऑर्डरtopBar
,bottomBar
, fab, content, snackbar है. (I5936b)DatePicker
औरDateRangePicker
में मौजूद उस समस्या को ठीक किया गया है जिसमें कुछ भाषाओं और फ़ॉर्मैट-स्केलेटन में, तारीख के कुछ एलिमेंट (जैसे, महीने के नाम) कैपिटल लेटर से शुरू नहीं होते थे. (I1430f)- एफ़एबी और एफ़एबी मेन्यू कॉम्पोनेंट टोकन इंटिग्रेट किए गए हैं. इनमें पैडिंग और टेक्स्ट में छोटे-मोटे विज़ुअल अपडेट किए गए हैं (Ib57f3)
ModalBottomSheet
अब सिमैंटिक ट्रैवर्सल के क्रम में सबसे पहले है. इसके बाद, स्क्रिम है. (I436f9, b/358594665)- एज-टू-एज मोड में नेविगेशन पिल के नीचे स्क्रोल करने पर, बॉटम ऐप्लिकेशन बार पूरी तरह से नहीं हटता है (I3ee21)
Compose Material3 वर्शन 1.3
वर्शन 1.3.2
9 अप्रैल, 2025
androidx.compose.material3:material3-*:1.3.2
रिलीज़ हो गया है. वर्शन 1.3.2 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
ListItem
अपनी मूल ऊंचाई के हिसाब से जगह का हिसाब लगाता है. अब यह लेआउट में सही जगह रिज़र्व करता है.NavigationBarItem
लेबल की ज़रूरत से ज़्यादा पैडिंग हटाएं और इसे स्पेसिफ़िकेशन के मुताबिक सही तरीके से अलाइन करें.- यह RTL मोड में
TabRow
लेआउट को ठीक करता है.
वर्शन 1.3.1
30 अक्टूबर, 2024
androidx.compose.material3:material3-*:1.3.1
रिलीज़ हो गया है. वर्शन 1.3.1 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
DatePicker
औरDateRangePicker
अब अपनी स्थिति केdisplayedMonthMillis
के ज़रिए सेट किए जाने पर, दिखाए गए महीने को सही तरीके से अपडेट करते हैं. (If9e47, b/333414302)- जब कम से कम चुने जा सकने वाले साल को आने वाले साल के लिए सेट किया जाता है, तब
DatePicker
औरDateRangePicker
में क्रैश होने की समस्या ठीक की गई. (I78656, b/319395747) - तारीख चुनने वाले कंट्रोल से जुड़ी समस्या को ठीक किया गया है, ताकि अपडेट किए गए
SelectableDates
इंस्टेंस को लागू करने पर यूज़र इंटरफ़ेस (यूआई) अपडेट हो जाए. (Iad59a, b/290135807, b/339898760) - बॉटम शीट में इस्तेमाल की गई बैक कॉलबैक प्राथमिकता को बदलकर
PRIORITY_DEFAULT
करें, ताकि IME कीबोर्ड को पहले बंद किया जा सके. (I447fb)
वर्शन 1.3.0
4 सितंबर, 2024
androidx.compose.material3:material3-*:1.3.0
रिलीज़ हो गया है. वर्शन 1.3.0 में ये कमिट शामिल हैं.
1.2.0 के बाद हुए ज़रूरी बदलाव
1.3.0 की मुख्य सुविधाएं
Material Design 3 के नए कॉम्पोनेंट
- कैरसेल
HorizontalMultiBrowseCarousel
औरHorizontalUncontainedCarousel
मौजूदा Material Design 3 कॉम्पोनेंट में सुधार किए गए हैं.
- [
ModalBottomSheet
] अब U+ पर Predictive Back की सुविधा काम करती है (Iccf32, b/281967264, b/304850357) - [
SearchBar
] अब U+ पर पीछे जाने पर झलक दिखाने वाले हाथ के जेस्चर की सुविधा काम करती है (I657f8) - नेविगेशन पैनल (
ModalDrawerSheet
औरDismissibleDrawerSheet
) में अब U+ पर ऑप्ट-इन के तौर पर, अनुमानित बैक सुविधा (Ie5b0b) काम करती है DropdownMenu
में अब कस्टम कलर, शेप, एलिवेशन, और बॉर्डर का इस्तेमाल किया जा सकता है. (I8e981,b/289554448, b/301887035, b/283654243)- स्लाइडर को अपडेट किया गया है, ताकि सुलभता को बेहतर बनाया जा सके. इसके लिए, गैप और स्टॉप इंडिकेटर जोड़ा गया है. (I3058e)
- गैप और स्टॉप इंडिकेटर जोड़कर,
ProgressIndicator
को अपडेट किया गया है, ताकि सुलभता को बेहतर बनाया जा सके. (I21451) - रिच टूलटिप के लिए डिफ़ॉल्ट कैरट जोड़ा गया. साथ ही, ऐंकर
LayoutCoordinates
के हिसाब से कस्टम कैरट बनाने की सुविधा जोड़ी गई. (Ifd42c) नुकसान पहुंचा सकने वाले बदलाव - पुल-टू-रीफ़्रेश करने की सुविधा वाले नए एपीआई:
- Dp यूनिट के बजाय, फ़्रैक्शनल वैल्यू इस्तेमाल करने के लिए
PullToRefreshState
को आसान बनाया गया है. isRefreshing
की स्थिति कोPullToRefreshState
के बजाय उपयोगकर्ता कंट्रोल करता है.PullToRefreshState
से नेस्ट किए गए स्क्रोल कनेक्शन को अलग कर दिया गया है. इसे नएPullToRefreshBox
याModifier.pullToRefresh
से मैनेज किया जाता है.- यह अपडेट, एक्सपेरिमेंट के तौर पर उपलब्ध पिछले एपीआई में एक बड़ा बदलाव है. (I0adeb, b/314496282, b/317177684, b/323787138, b/324573502, b/317177683) विज़ुअल में हुए बड़े बदलाव
- Dp यूनिट के बजाय, फ़्रैक्शनल वैल्यू इस्तेमाल करने के लिए
- फ़ोकस स्टेट ओवरले को 0.1f पर अपडेट करें, ताकि कलर कंट्रास्ट सही हो. (I7ea77)
lightColorScheme
औरdarkColorScheme
में, डिफ़ॉल्ट रूप से मौजूद बैकग्राउंड और रंग में मामूली बदलाव किए गए हैं. (I9db52)- नए नॉन-टेक्स्ट कंट्रास्ट स्पेसिफ़िकेशन के मुताबिक, अपडेट किया गया स्लाइडर और
ProgressIndicator
रंग. (I26807) - अब कॉम्पोनेंट,
SurfaceContainer
वैरिएंट का इस्तेमाल करते हैं. जिन कॉम्पोनेंट में पहलेSurface
औरTonalElevation
की मदद से कलर का हिसाब लगाया जाता था वे अब डिफ़ॉल्ट रूप सेSurfaceContainer
रोल का इस्तेमाल करते हैं. टोनल एलिवेशन का इन पर कोई असर नहीं पड़ता. (b/304584161) - सरफ़ेस और सरफ़ेस कंटेनर की बेसलाइन भूमिकाओं में थोड़ा बदलाव किया गया है. इससे, हल्के और गहरे रंग वाली थीम में ज़्यादा रंगत मिलती है. (I677a5)
- एक्सपेरिमेंट के तौर पर उपलब्ध एपीआई को स्टेबल वर्शन में प्रमोट किया गया!
- परफ़ॉर्मेंस में सुधार किए गए
वर्शन 1.3.0-rc01
21 अगस्त, 2024
androidx.compose.material3:material3-*:1.3.0-rc01
रिलीज़ हो गया है. वर्शन 1.3.0-rc01 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
ModalBottomSheet
अब सिमैंटिक ट्रैवर्सल के क्रम में सबसे पहले है. इसके बाद, स्क्रिम है. (I436f9, b/358594665)
वर्शन 1.3.0-beta05
24 जुलाई, 2024
androidx.compose.material3:material3-*:1.3.0-beta05
रिलीज़ हो गया है. वर्शन 1.3.0-beta05 में ये कमिट शामिल हैं.
- उस समस्या को ठीक किया गया है जिसमें Android N और O पर
BottomSheet
कॉन्टेंट मौजूद नहीं था या कट गया था (a10a2d) - स्लाइडर के सिमैंटिक बाउंड्री को बढ़ाया गया है, ताकि
TalkBack
थंब के चारों ओर फ़ोकस इंडिकेटर को ठीक से दिखा सके. (0b5a1d)
वर्शन 1.3.0-beta04
26 जून, 2024
androidx.compose.material3:material3-*:1.3.0-beta04
रिलीज़ हो गया है. वर्शन 1.3.0-beta04 में ये कमिट शामिल हैं.
वर्शन 1.3.0-beta03
12 जून, 2024
androidx.compose.material3:material3-*:1.3.0-beta03
रिलीज़ हो गया है. वर्शन 1.3.0-beta03 में ये कमिट शामिल हैं.
बाहरी योगदान
- कॉमन सोर्स सेट से
androidx.compose.material3.DropdownMenu
उपलब्ध कराएं. (If62c0)
वर्शन 1.3.0-beta02
29 मई, 2024
androidx.compose.material3:material3-*:1.3.0-beta02
रिलीज़ हो गया है. वर्शन 1.3.0-beta02 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
Modifier.pullToRefreshIndicator
में एलिवेशन की सुविधा काम करती है. साथ ही, Pull To Refresh API को अपडेट किया गया है, ताकि लैम्डा के बजाय बूलियन को चालू किया जा सके.PullToRefreshBox
में कॉन्टेंट अलाइनमेंट की सुविधा उपलब्ध है (I75679)TooltipScope
को सीलबंद इंटरफ़ेस बनाना औरTooltipBox
और लेबल में इस्तेमाल करने के लिए, इंटरनल इंप्लीमेंटेशन बनाना. (I3833e)CarouselItemScope
में दो नए मॉडिफ़ायर जोड़े गए हैं -maskClip
औरmaskBorder
. इनकी मदद से, किसी भी कैरसेल आइटम में आसानी से शेप और बॉर्डर जोड़ा जा सकता है (Id67a1)TimePickerState
अब एक इंटरफ़ेस है. इससे समय सेट किया जा सकता है (I88546)- लिंक को स्टाइल करने के लिए एपीआई को अपडेट किया गया:
TextLinkStyles
कोTextStyle
में ले जाया गया औरTextDefaults
को मटीरियल से हटा दिया गया. (I5477b)
गड़बड़ियां ठीक की गईं
ModalBottomSheet
की स्थिति और नेविगेशन बार के आइकॉन अब गहरे रंग वाली थीम की स्थिति के हिसाब से दिखते हैं. (Ie1fe7, b/338342149)ModalBottomSheet
स्क्रिम में, शीट बंद करने के सिमैंटिक जोड़े गए. (0e61cb,b/328801864)
बाहरी योगदान
androidx.compose.material3.AlertDialog
को सामान्य सोर्स सेट (Ia33f5) से उपलब्ध कराएंModalBottomSheet
को सामान्य सोर्स सेट (Id7cc7) से उपलब्ध कराएं
वर्शन 1.3.0-beta01
14 मई, 2024
androidx.compose.material3:material3-*:1.3.0-beta01
रिलीज़ हो गया है. वर्शन 1.3.0-beta01 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
CaretProperties
के बजायDpSize
का इस्तेमाल करना.CaretProperties
को हटाया जा रहा है.CaretScope
का नाम बदलकरTooltipScope
करें. (Id9a76)- टेक्स्ट में Material थीम वाले लिंक पाने के लिए, एपीआई को अपडेट किया गया. खास तौर पर, थीम वाले
TextDefaults
बनाने के लिएTextDefaults
से तरीके हटा दिए गए हैं. साथ ही, थीम वाले लिंक के साथ एचटीएमएल पार्स करने की सुविधा भी हटा दी गई है.LinkAnnotations
इसके बजाय,TextLinkStyles
क्लास जोड़ी गई है. इससे टेक्स्ट कंपोज़ेबल के पैरामीटर के तौर पर लिंक को स्टाइल किया जा सकता है. (I31b93)
वर्शन 1.3.0-alpha06
1 मई, 2024
androidx.compose.material3:material3-*:1.3.0-alpha06
रिलीज़ हो गया है. वर्शन 1.3.0-alpha06 में ये कमिट शामिल हैं.
नुकसान पहुंचा सकने वाले बदलाव
पुल-टू-रिफ़्रेश करने की सुविधा वाले नए एपीआई:
- Dp यूनिट के बजाय, फ़्रैक्शनल वैल्यू इस्तेमाल करने के लिए
PullToRefreshState
को आसान बनाया गया है. isRefreshing
की स्थिति कोPullToRefreshState
के बजाय उपयोगकर्ता कंट्रोल करता है.PullToRefreshState
से नेस्ट किए गए स्क्रोल कनेक्शन को अलग कर दिया गया है. इसे नएPullToRefreshBox
याModifier.pullToRefresh
से मैनेज किया जाता है.- यह अपडेट, एक्सपेरिमेंट के तौर पर उपलब्ध पिछले एपीआई में एक बड़ा बदलाव है. (I0adeb, b/314496282, b/317177684, b/323787138, b/324573502, b/317177683)
- Dp यूनिट के बजाय, फ़्रैक्शनल वैल्यू इस्तेमाल करने के लिए
एपीआई में हुए बदलाव
RippleConfiguration#isEnabled
को हटा दिया गया है औरLocalRippleConfiguration
को नल के तौर पर सेट किया गया है. रिपल इफ़ेक्ट को बंद करने के लिए,isEnabled = false
के साथRippleConfiguration
देने के बजाय,LocalRippleConfiguration
कोnull
दें. (I22725)ModalBottomSheet
एज-टू-एज सुविधा चालू होने पर, स्टेटस बार पर ज़्यादा सटीक तरीके से स्क्रिम बनाता है. अब बॉटम शीट में मौजूद कॉन्टेंट, विंडो इंसर्ट का इस्तेमाल कर सकता है. इससे नेविगेशन बार के ऊपर मौजूद कॉन्टेंट दिखता है.ModalBottomSheet
पैरामीटरwindowInsets
का नाम बदलकरcontentWindowInsets
कर दिया गया है, ताकि यह तय किया जा सके कि इनसेट कहां लागू किए जाएंगे. ये अब विंडो लॉजिक से नहीं जुड़े हैं.contentWindowInsets
टाइप को ऐसे फ़ंक्शन में बदल दिया गया है जोWindowInsets
दिखाता है, ताकि इसे नई विंडो में हल किया जा सके. (I39630, b/274872542, b/300280229, b/290893168)PrimaryScrollableTabRow
औरSecondaryScrollableTabRow
अब सबकंपोज़िशन के बजाय कस्टम लेआउट का इस्तेमाल करते हैं. इससे परफ़ॉर्मेंस बेहतर होनी चाहिए. (I991e0)- टेक्स्ट लिंक के लिए, सामान्य स्टाइलिंग, होवर किए गए और फ़ोकस किए गए स्टाइलिंग के अलावा, प्रेस किए गए स्टाइलिंग का विकल्प भी उपलब्ध है.
TextDefaults
तरीकों में से हर एक कोpressedStyle
आर्ग्युमेंट मिला, ताकि वह इसका इस्तेमाल कर सके. (Ic473f, b/139312671)
गड़बड़ियां ठीक की गईं
- नेविगेशन पैनल के ड्रैग ऐंकर की चौड़ाई अब
drawerContent
की चौड़ाई से मेल खाती है. (Ibc72f, b/245355396) - लेबल के लिए
OutlinedTextField
टॉप पैडिंग अब सिस्टम फ़ॉन्ट के साइज़ के हिसाब से तय होती है. (Idc781) - पैकेज की जगह की जानकारी
CalendarLocale
पर सेट है. (Ifa235) - [प्रिडिक्टिव बैक] प्रिडिक्टिव बैक ऐनिमेशन को अपडेट करके, (0.1, 0.1, 0, 1) का इंटरपोलेशन कर्व इस्तेमाल किया गया (I2591a)
वर्शन 1.3.0-alpha05
17 अप्रैल, 2024
androidx.compose.material3:material3-*:1.3.0-alpha05
रिलीज़ हो गया है. वर्शन 1.3.0-alpha05 में ये कमिट शामिल हैं.
नई सुविधाएं
SearchBar
औरDockedSearchBar
में नए ओवरलोड हैं, जो टेक्स्ट फ़ील्ड पैरामीटर लेते हैं. इससे टेक्स्ट फ़ील्ड को खोज बार के बाकी हिस्से से अलग स्टाइल किया जा सकता है. साथ ही, कस्टम टेक्स्ट फ़ील्ड में पास किया जा सकता है. मौजूदा लागू करने की प्रोसेस के टेक्स्ट फ़ील्ड कोSearchBarDefaults.InputField
के तौर पर उपलब्ध कराया गया है. (I50c73, b/275074248, b/278773336, b/326627700)- ज़रूरत पड़ने पर टिक को पसंद के मुताबिक बनाने के लिए, lambda
drawTick
को सार्वजनिक एपीआई में जोड़ा गया है (I0c048)
एपीआई में हुए बदलाव
- टेक्स्ट लिंक के लिए, सामान्य स्टाइलिंग के साथ-साथ दबाए जाने की स्थिति में स्टाइलिंग करने का विकल्प भी जोड़ा गया है. इसके अलावा, टेक्स्ट लिंक पर कर्सर घुमाने और फ़ोकस करने की सुविधा भी जोड़ी गई है (I5f864, b/139312671)
CarouselItemInfo
को अपडेट किया गया है, ताकि मास्क रेक्ट का पता चल सके. इससे यह पता चलता है कि आइटम को किस मास्क रेक्ट से काटा जा रहा है (I785d8)BasicTooltipState
को Material 3 के सार्वजनिक एपीआई से हटा दिया गया है. जब तक Foundation काBasicTooltip
स्थिर नहीं हो जाता, तब तक इसकी सुविधाओं कोTooltipState
के साथ जोड़ दिया गया है. (Icda29)TextDefaults
ऑब्जेक्ट जोड़ा गया है. इसमेंLinkAnnotation
बनाने के तरीके शामिल हैं. साथ ही, इसमें एचटीएमएल टैग वाली स्ट्रिंग को पार्स करने का तरीका भी शामिल है. इससे लिंक परMaterialTheme
लागू होता है (I98532, b/139312671)ExposedDropdownMenuBoxScope
अब सबक्लास की अनुमति नहीं देता. अब एक्सपोज़ किए गए ड्रॉपडाउन मेन्यू मेंMenuAnchorType
है. इसेmenuAnchor
को पास किया जाना चाहिए, ताकि a11y को बेहतर तरीके से सपोर्ट किया जा सके. इसका इस्तेमाल, अब बंद हो चुकेExposedDropdownMenu
कोfocusable
पास करने के बजाय किया जाना चाहिए.menuAnchor
मेंenabled
की स्थिति को कंट्रोल करने के लिए एक नया पैरामीटर है. (I55ee6, b/257209915, b/308840226)OutlinedButton
के बंद होने पर, उसके बॉर्डर के रंग की समस्या ठीक की गई. चालू की गई स्थिति को लेने वालेButtonDefaults.outlinedButtonBorder("enabled")
ओवरलोड को जोड़ा गया. (Ie650b, b/318461363)- क्लाइंट को आइटम के साइज़ के बारे में जानकारी देने के लिए, नई
CarouselItemInfo
क्लास जोड़ी गई. (I9070c) - अब बिना सर्फ़ेस कंटेनर वाले
ColorScheme
कंस्ट्रक्टर का इस्तेमाल नहीं किया जा सकता. कृपया उस कंस्ट्रक्टर पर माइग्रेट करें जिसमें सर्फ़ेस कंटेनर शामिल हैं. (I35c11) - [आउटलाइन किया गया]
TextFieldDefaults
ContainerBox
का नाम बदलकरContainer
कर दिया गया है. (Ie8d3b)
गड़बड़ियां ठीक की गईं
- अगर
sheetSwipeEnabled
की वैल्यू false पर सेट है, तोBottomSheetScaffold
नेस्ट किए गए स्क्रोल से स्क्रोल नहीं होगा. (I5e1c1, b/306464779) IconButtonSamples.kt
में,ExperimentalMaterial3Api
के कुछ ऑप्ट-इन एनोटेशन हटा दिए गए हैं. (I111d1)
वर्शन 1.3.0-alpha04
3 अप्रैल, 2024
androidx.compose.material3:material3-*:1.3.0-alpha04
रिलीज़ हो गया है. वर्शन 1.3.0-alpha04 में ये कमिट शामिल हैं.
नई सुविधाएं
- Material3 कैरोसेल के दो एक्सपेरिमेंटल वर्शन जोड़े गए हैं -
HorizontalMultiBrowseCarousel
औरHorizontalUncontainedCarousel
(I88d64) - U+ पर ऑप्ट-इन के तौर पर, अनुमानित बैक जेस्चर की सुविधा के लिए, Compose M3 Nav Drawer (
ModalDrawerSheet
औरDismissibleDrawerSheet
) को अपडेट किया गया (Ie5b0b) - आइकॉन में एक नया एपीआई जोड़ा गया है. इससे, रंग के टिंट को लैम्ब्डा के तौर पर पास किया जा सकेगा, ताकि उसे फिर से कंपोज़ करने से बचा जा सके. (I5b5a2)
- टॉप ऐप्लिकेशन बार एपीआई अब फ़िक्स्ड और कोलैप्स किए जा सकने वाले, दोनों सेक्शन के लिए कस्टम ऊंचाई की सुविधा देते हैं. (Ib8b0c, b/323403446)
एपीआई में हुए बदलाव
- टॉप ऐप्लिकेशन बार एपीआई अब फ़िक्स्ड और कोलैप्स किए जा सकने वाले, दोनों सेक्शन के लिए कस्टम ऊंचाई की सुविधा देते हैं. उस समस्या को ठीक कर दिया गया है जिसकी वजह से कॉन्टेंट स्क्रोल करते समय, एक लाइन वाले टॉप ऐप्लिकेशन बार कई बार फिर से कंपोज़ हो जाते थे. हमने उस समस्या को ठीक कर दिया है जिसमें बड़े फ़ॉन्ट/डिसप्ले सेटिंग वाले डिवाइसों पर
MediumTopAppBar
छोटे किए गए टाइटल दिखते थे. (Ib8b0c, b/323403446, b/300953236, b/286296147, b/330410290, b/308540676) SegmentedButton
और इससे जुड़े एपीआई अब स्थिर हो गए हैं (I8a158)SwipeToDismissBox
,SwipeToDismissBoxDefaults
,SwipeToDismissBoxState
, औरSwipeToDismissBoxValue
को अब स्टेबल के तौर पर मार्क कर दिया गया है. (I5f000)- बहिष्कृत किए गए
DismissDirection
औरDismissValue
एनम और एपीआई हटा दिए गए हैं. (I89ccd) - कैरसेल के
CarouselState
कंपैनियन ऑब्जेक्ट में एक्सपेरिमेंटल टैग जोड़ा गया. (I94154) LocalMinimumInteractiveComponentEnforcement
को बंद कर दिया गया है और इसकी जगहLocalMinimumInteractiveComponentSize
को लॉन्च किया गया है. (I7a7ac)SearchBarColors
कंस्ट्रक्टर अब सभी के लिए उपलब्ध है. (I769ca)SwipeToDismissBox
मेंgesturesEnabled
पैरामीटर जोड़ा गया. (Idc59f, b/324170119)- उन टेक्स्ट फ़ील्ड एपीआई को हटा दिया गया है जिन्हें 'अब इस्तेमाल में नहीं है' और 'एक्सपेरिमेंट के तौर पर उपलब्ध' के तौर पर मार्क किया गया था. (I1305f)
वर्शन 1.3.0-alpha03
20 मार्च, 2024
androidx.compose.material3:material3-*:1.3.0-alpha03
रिलीज़ हो गया है. वर्शन 1.3.0-alpha03 में ये कमिट शामिल हैं.
विज़ुअल में नुकसान पहुंचाने वाले बदलाव
- फ़ोकस स्टेट ओवरले को 0.1f पर अपडेट करें, ताकि कलर कंट्रास्ट सही हो. (I7ea77)
lightColorScheme
औरdarkColorScheme
में, डिफ़ॉल्ट रूप से मौजूद बैकग्राउंड और रंग में मामूली बदलाव किए गए हैं. (I9db52)
नई सुविधाएं
ExposedDropdownMenu
को पसंद के मुताबिक बनाने के लिए पैरामीटर जोड़े गए. खास तौर पर, मेन्यू में अबfocusable
पैरामीटर (डिफ़ॉल्टtrue
) होता है. बदलाव किए जा सकने वाले टेक्स्ट फ़ील्ड के साथ काम करते समय, इसेfalse
पर सेट किया जाना चाहिए. (I4184c, b/323694447, b/278609042)
एपीआई में हुए बदलाव
ScaffoldSubcomposeInMeasureFix
फ़्लैग हटा दिया गया है. (Ie2a4b)NavigationRailItemColors
को अब@Immutable
के तौर पर मार्क कर दिया गया है. (If6112, b/327660613)NavigationBarItemColors
को अब@Immutable
के तौर पर मार्क कर दिया गया है. (I42a30, b/298064514)- Slider Track कंपोज़ेबल में पैरामीटर का क्रम बदला गया. (I9f315)
ExposedDropdownMenu
को अबPopup
का इस्तेमाल करके लागू किया गया है. इसका व्यवहार एक जैसा होना चाहिए. हालांकि, कीबोर्ड पर टाइप करते समय, फ़ोकस किए जा सकने वाले मेन्यू और बदलाव किए जा सकने वाले टेक्स्ट फ़ील्ड को खारिज किया जा सकता है.
गड़बड़ियां ठीक की गईं
- सरफ़ेस और सरफ़ेस कंटेनर की बेसलाइन भूमिकाओं में थोड़ा बदलाव किया गया है. इससे, हल्के और गहरे रंग वाली थीम में ज़्यादा रंगत मिलती है. (I677a5)
- नए नॉन-टेक्स्ट कंट्रास्ट स्पेसिफ़िकेशन के मुताबिक, अपडेट किया गया स्लाइडर और
ProgressIndicator
रंग. (I26807) - फ़ोकस स्टेट ओवरले को 0.1f पर अपडेट करें, ताकि कलर कंट्रास्ट सही हो. (I7ea77)
lightColorScheme
औरdarkColorScheme
में, डिफ़ॉल्ट रूप से मौजूद बैकग्राउंड और रंग में मामूली बदलाव किए गए हैं. (I9db52)
वर्शन 1.3.0-alpha02
6 मार्च, 2024
androidx.compose.material3:material3-*:1.3.0-alpha02
रिलीज़ हो गया है. वर्शन 1.3.0-alpha02 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- स्लाइडर की स्थितियों को फिर से स्थिर किया जा रहा है.
State.onValueChangeFinished
को फिर से मान्य किया जा रहा है.onValueChangeFinished
कोrememberUpdatedState
में रैप किया जा रहा है. (I82ab2, b/322269951) - नेविगेशन कॉम्पोनेंट अब नई
SurfaceContainer
भूमिकाओं का इस्तेमाल करते हैं.DrawerDefaults
एट्रिब्यूट में अबstandardContainerColor
औरmodalContainerColor
एट्रिब्यूट शामिल हैं.DrawerDefaults.ModalDrawerElevation
अब0.dp
है. (I7fbac) - हम
state.onValueChangeFinished
कोvar
में बदल रहे हैं. इसलिए,Slider
के स्टेटस से@Stable
को हटाया जा रहा है. (Ied34a, b/322269951) ModalBottomSheet
औरStandardBottomSheet
ऐनिमेशन स्पेसिफ़िकेशन अबTweenSpec
है. इसे स्प्रिंग ऐनिमेशन से अपडेट किया गया है. इससे, दिखने वाले ओवरशूट की समस्या ठीक हो जाती है. डेंसिटी के बिना काम न करने वालेSheetState
कंस्ट्रक्टर अब हटा दिए गए हैं. (I7babc, b/285847707)
गड़बड़ियां ठीक की गईं
- अब कॉम्पोनेंट,
SurfaceContainer
वैरिएंट का इस्तेमाल करते हैं. जिन कॉम्पोनेंट में Surface औरTonalElevation
की मदद से कलर का हिसाब लगाया जाता था वे अब डिफ़ॉल्ट रूप सेTonalElevation
की भूमिकाओं का इस्तेमाल करते हैं. इन पर टोनल एलिवेशन का कोई असर नहीं पड़ता.SurfaceContainer
(b/304584161) - उस गड़बड़ी को ठीक किया गया है जिसकी वजह से,
ElevatedFilterChip
के चुने नहीं गए और बंद किए गए कंटेनर का रंग काला हो जाता था. (I400e6, b/322407043) - प्रोग्रेस 0 होने पर, प्रोग्रेस इंडिकेटर में प्रोग्रेस का प्रतिशत न दिखने की समस्या ठीक की गई (Id6582)
- दाएं से बाएं लेआउट (Iab0e1) पर
Slider
औरRangeSlider
से जुड़ी समस्या ठीक की गई - स्लाइडर की रेंज का हिसाब लगाने के लिए
SliderRangeTolerance
जोड़ा जा रहा है, क्योंकि फ़्लोट राउंडिंग गलत हो सकती है. (Ic918a, b/324934900) - पक्का करें कि
DatePickerDialog
मेंDateRangePicker
को नेस्ट करते समय या बड़ी स्क्रीन पर बड़े फ़ॉन्ट के साथ किसी भी तरह का तारीख चुनने वाला कंट्रोल दिखाते समय, उसके बटन दिखें. (Ie4758, b/325107799, b/277768544) Menu
अब कंटेनर के रंग के लिए,SurfaceContainer
की भूमिका का इस्तेमाल करता है.MenuDefaults.TonalElevation
अब0.dp
है. (I135b7)TextField
अब कंटेनर के रंग के लिए,SurfaceContainerHighest
की भूमिका का इस्तेमाल करता है. (I4dced)- अब एलिवेटेड चिप,
SurfaceContainerLow
भूमिका (I7cd2f) का इस्तेमाल करते हैं DatePicker
कंटेनर का रंग अबSurfaceContainerHigh
है.DatePickerDefaults.TonalElevation
अब0.dp
है. (Ida753)- यह कुकी, बॉटम शीट कंटेनर और ड्रैग हैंडल के रंग को अपडेट करती है. (I72a0a)
RichTooltip
कंटेनर का रंग अबSurfaceContainer
है. (Ia8b45)SearchBar
कंटेनर का रंग अबSurfaceContainerHighest
है.SearchBarDefaults.TonalElevation
अब0.dp
है. (I88604)- अपडेट स्विच बंद कर दिया गया है. साथ ही,
SurfaceContainerHighest
कलर रोल का इस्तेमाल करने के लिए, चुने नहीं गए ट्रैक/आइकॉन को हटा दिया गया है. (I7687a) AlertDialog
कंटेनर का रंग अबSurfaceContainerHigh
है. (Ie0433)BottomAppBar
कंटेनर का रंग अबSurfaceContainer
है.TopAppBar
onScroll
का रंग अबSurfaceContainer
है. (I41630)ElevatedCard
कंटेनर का रंग अबSurfaceContainerLow
है.FilledCard
के कंटेनर का रंगSurfaceContainerHighest
है. (I35141)ElevatedButton
कंटेनर का रंग अबSurfaceContainerLow
है.FilledIconButton
को अबSurfaceContainerHighest
रंग का कंटेनर मिल गया है. (I792c9)TimePicker
कंटेनर के रंग और घड़ी के डायल के रंग की भूमिका कोSurfaceContainerHighest
में अपडेट करता है. (I43b93)
वर्शन 1.3.0-alpha01
21 फ़रवरी, 2024
androidx.compose.material3:material3-*:1.3.0-alpha01
रिलीज़ हो गया है. वर्शन 1.3.0-alpha01 में ये कमिट शामिल हैं.
नई सुविधाएं
- Compose M3
ModalBottomSheet
को अपडेट करें, ताकि यह U+ पर Predictive Back की सुविधा के साथ काम कर सके (Iccf32, b/281967264, b/304850357) - U+ पर पीछे जाने पर झलक दिखाने वाले हाथ के जेस्चर की सुविधा के लिए, Compose M3
SearchBar
को अपडेट किया गया (I657f8) - स्लाइडर को अपडेट किया गया है, ताकि सुलभता को बेहतर बनाया जा सके. इसके लिए, गैप और स्टॉप इंडिकेटर जोड़ा गया है. (I3058e)
- गैप और स्टॉप इंडिकेटर जोड़कर,
ProgressIndicator
को अपडेट किया गया है, ताकि सुलभता को बेहतर बनाया जा सके. (I21451) - रिच टूलटिप के लिए डिफ़ॉल्ट कैरट जोड़ा गया. रिच टूलटिप का नया एपीआई, अब ऐंकर
LayoutCoordinates
के हिसाब से कस्टम कैरट बनाने की अनुमति देता है. (Ifd42c)
व्यवहार में बदलाव
- मटीरियल कॉम्पोनेंट को नए रिपल एपीआई का इस्तेमाल करने के लिए माइग्रेट कर दिया गया है. अब वे
RippleTheme
से क्वेरी नहीं करते हैं.
एपीआई में हुए बदलाव
drawStopIndicator
अब सभी के लिए उपलब्ध है. (I3f59f)DatePicker
केformatWithSkeleton
फ़ंक्शन को इंटरनल (Ic65dc) के तौर पर मार्क करेंDropdownMenu
में अब कस्टम कलर, शेप, एलिवेशन, और बॉर्डर का इस्तेमाल किया जा सकता है. (I8e981, b/289554448, b/301887035, b/283654243)- Material3 कॉम्पोनेंट, अपने एपीआई में
MutableInteractionSource
को दिखाते हैं. इन्हें अब अपडेट कर दिया गया है. अब ये ऐसेMutableInteractionSource
को दिखाते हैं जो नल हो सकता है और डिफ़ॉल्ट रूप सेnull
पर सेट होता है. यहां सिमैंटिक में कोई बदलाव नहीं किया गया है: null पास करने का मतलब है कि आपकोMutableInteractionSource
को ऊपर नहीं ले जाना है. अगर ज़रूरत होगी, तो इसे कॉम्पोनेंट के अंदर बनाया जाएगा. इसे null पर सेट करने से, कुछ कॉम्पोनेंट को कभी भीMutableInteractionSource
असाइन नहीं किया जाता है. साथ ही, अन्य कॉम्पोनेंट को सिर्फ़ तब इंस्टेंस बनाने की अनुमति मिलती है, जब उन्हें इसकी ज़रूरत होती है. इससे इन कॉम्पोनेंट की परफ़ॉर्मेंस बेहतर होती है. अगर इन कॉम्पोनेंट को पास किए गएMutableInteractionSource
का इस्तेमाल नहीं किया जा रहा है, तो हमारा सुझाव है कि आप इसके बजाय null पास करें. हमारा यह भी सुझाव है कि आप अपने कॉम्पोनेंट में भी इसी तरह के बदलाव करें. (I41abb, b/298048146) RippleConfiguration
औरLocalRippleConfiguration
को जोड़ता है, ताकि तय की गई वैल्यू का इस्तेमाल करके, हर कॉम्पोनेंट / सब-ट्री के लिए रिपल को पसंद के मुताबिक बनाया जा सके. उदाहरण के लिए, किसी ऐसे कॉम्पोनेंट का रंग बदलने के लिए जिसे कंट्रोल नहीं किया जा सकता या किसी कॉम्पोनेंट के लिए रिपल इफ़ेक्ट बंद करने के लिए. ज़्यादातर मामलों में, डिफ़ॉल्ट वैल्यू का इस्तेमाल करना चाहिए: ये एपीआई, अलग-अलग कॉम्पोनेंट / सीमित सब-ट्री को पसंद के मुताबिक बनाने के लिए एक विकल्प हैं. बड़े बदलावों और कस्टम डिज़ाइन सिस्टम के लिए, आपकोcreateRippleModifierNode
का इस्तेमाल करके अपना रिपल बनाना चाहिए. (I7b5d6, b/298048146)- material3 में नया रिपल एपीआई जोड़ा गया है. यह काम न करने वाले
rememberRipple
की जगह लेता है. यहrememberRipple
/RippleTheme
एपीआई के इस्तेमाल पर रोक लगाने के लिए,CompositionLocal
औरLocalUseFallbackRippleImplementation
को भी कुछ समय के लिए जोड़ता है. इसे अगले स्टेबल वर्शन में हटा दिया जाएगा. साथ ही, इसका इस्तेमाल सिर्फ़ उन मामलों में किया जा सकता है जहां आपको कस्टमRippleTheme
देना है. (I34cbc, b/298048146)
गड़बड़ियां ठीक की गईं
- परफ़ॉर्मेंस को बेहतर बनाने के लिए,
ModalBottomSheet
में मौजूद सबकंपोज़िशन को हटाया गया. उस समस्या को ठीक किया गया है जिसमेंLookaheadScope
के साथ इस्तेमाल करने पर, कुछ खास स्थितियों मेंModalBottomSheet
क्रैश हो सकता था. (I2a198) - परफ़ॉर्मेंस को बेहतर बनाने के लिए,
BottomSheetScaffold
में मौजूद सबकंपोज़िशन को हटाया गया. उस समस्या को ठीक किया गया है जिसमेंLookaheadScope
के साथ इस्तेमाल करने पर, कुछ खास मामलों मेंBottomSheetScaffold
क्रैश हो जाता था. (Ie6401) - बैज के अलाइनमेंट को इस तरह से अडजस्ट किया जाता है कि वह सबसे ऊपर दाएं कोने के हिसाब से, ऐंकर किए गए कॉन्टेंट के बीच में हो. (I18a28)
DateRangePicker
में सुलभता से जुड़ी समस्या को ठीक किया गया है. इसमें, महीने और साल के टेक्स्ट टाइटल को स्क्रीन रीडर, स्विच ऐक्सेस, और Voice Access का इस्तेमाल करने वाले लोगों के लिए कार्रवाई करने लायक बताया गया था. (I2ac55)mediumTopAppBarColors
पैरामीटर के क्रम से जुड़ी गड़बड़ी को ठीक किया गया. (Ibe64a)
वर्शन 1.2
वर्शन 1.2.1
6 मार्च, 2024
androidx.compose.material3:material3-*:1.2.1
रिलीज़ हो गया है. वर्शन 1.2.1 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- स्लाइडर की स्थितियों को फिर से स्थिर करें.
State.onValueChangeFinished
को फिर से मान्य किया जा रहा है.onValueChangeFinished
कोrememberUpdatedState
में रैप किया जा रहा है. (Ie8fd0, b/322269951) - हम
state.onValueChangeFinished
कोvar
में बदल रहे हैं. इसलिए,Slider
के स्टेटस से@Stable
को हटाया जा रहा है. (I82ba1, b/322269951) - डिफ़ॉल्ट रंगों से कॉपी करने के लिए,
NavigationBar
कस्टम रंगों को ठीक करें. (80a779, b/326894020) ExposedDropdownMenu
में रिग्रेशन की समस्या को ठीक किया गया है, ताकि इसे फिर से फ़ोकस किया जा सके (3fcec1, b/323694447)- बटन के रंग की कैश मेमोरी से जुड़ी समस्या ठीक की गई (3e5bbcb/327371655)
वर्शन 1.2.0
7 फ़रवरी, 2024
androidx.compose.material3:material3-*:1.2.0
रिलीज़ हो गया है. वर्शन 1.2.0 में ये कमिट शामिल हैं.
आम समस्या
- परफ़ॉर्मेंस को बेहतर बनाने के लिए,
PrimaryTabRow
में व्यू-कंपोज़ इंटरऑप रेंडरिंग से जुड़ी गड़बड़ी हुई थी. इस समस्या को हल करने के लिए,TabRowDefaults.PrimaryIndicator
की मदद सेTabRow
का इस्तेमाल करें
1.1.0 के बाद हुए अहम बदलाव
Material Design 3 के नए कॉम्पोनेंट
- नीचे खींचकर रीफ़्रेश करें
- Segmented Button
मौजूदा Material Design 3 कॉम्पोनेंट को बेहतर बनाया गया है.
- बॉटम ऐप्लिकेशन बार (दाएं से बाएं अलाइनमेंट, स्क्रोल करने पर अपने-आप छिप जाता है)
- टैब के विज़ुअल में बदलाव
- बैज (अलाइनमेंट अपडेट)
एक्सपेरिमेंटल एपीआई को स्टेबल वर्शन में प्रमोट किया गया!
परफ़ॉर्मेंस में सुधार
- ज़्यादा जानकारी के लिए, कृपया यह ब्लॉग पोस्ट देखें!
वर्शन 1.2.0-rc01
24 जनवरी, 2024
androidx.compose.material3:material3-*:1.2.0-rc01
रिलीज़ हो गया है. वर्शन 1.2.0-rc01 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
mediumTopAppBarColors
पैरामीटर के क्रम से जुड़ी गड़बड़ी को ठीक किया गया. (Ibe64a)1.2.0-beta02
मेंCardDefaults.cardColors
के दौरान हुई गड़बड़ी को ठीक किया गया है. इस गड़बड़ी की वजह से,containerColor
पैरामीटर की वैल्यू के आधार परcontentColor
अपडेट नहीं हो रहा था. (Iee041, b/319671246)1.2.0-beta02
में पेश की गईdisabledContentColor
में मौजूद गड़बड़ी को ठीक किया गया है. साथ ही, इसमें कुछ सुधार किए गए हैं. (I6dda1, b/318428829)
वर्शन 1.2.0-beta02
10 जनवरी, 2024
androidx.compose.material3:material3-*:1.2.0-beta02
रिलीज़ हो गया है. वर्शन 1.2.0-beta02 में ये कमिट शामिल हैं.
ऐसी गड़बड़ी जिसकी जानकारी पहले से है
IconButtonColors
में मौजूद बग की वजह से, उपयोगकर्ता के तय किए गएcontentColor
के बजाय,LocalContentColor
के ऐल्फ़ा (0.38f) को डिफ़ॉल्ट रूप सेdisabledContentColor
असाइन कर दिया जाएगा. इस समस्या को हल करने के लिए,disabledContentColor
को साफ़ तौर पर सेट करें. इस समस्या को अगले वर्शन में ठीक कर दिया जाएगा.
एपीआई में हुए बदलाव
- Plain
Tooltip
API के लिए, टूलटिप कैरट चालू करने की सुविधा जोड़ी गई है. (Ibf767) SwipeToDismissState
,rememberSwipeToDismiss
, औरSwipeToDismissValue
का नाम बदलकर_SwipeToDismissBox_
कर दिया गया है. (I68d6d)
गड़बड़ियां ठीक की गईं
- स्पेसिफ़िकेशन के मुताबिक,
ListItem
के आखिर में पैडिंग की वैल्यू को ठीक किया गया. (Ibd68b, b/305342674) - आउटलाइन वाले कार्ड के लिए आउटलाइन का रंग, अब
OutlineVariant
पर सही तरीके से मैप किया गया है. (I75480, b/310979715) - डाइनैमिक कलर अब सिस्टम में तय की गई कलर रोल से जानकारी लेता है. इससे सुलभ कॉन्टेंट के लिए कंट्रास्ट बेहतर होता है. साथ ही, डाइनैमिक कलर, Material स्पेसिफ़िकेशन के ज़्यादा करीब होता है. (I1de96)
- Android T/13+ पर
android:enableOnBackInvokedCallback="true"
होने पर,ModalBottomSheet
को वापस लाने की सुविधा से जुड़ी समस्या ठीक की गई. (I728dc, b/306196110)
वर्शन 1.2.0-beta01
13 दिसंबर, 2023
androidx.compose.material3:material3-*:1.2.0-beta01
रिलीज़ हो गया है. वर्शन 1.2.0-beta01 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
TabIndicatorScope
को एक्सपेरिमेंट के तौर पर मार्क करें. (I45c88)- टूलटिप के लिए, बंद किए गए एक्सपेरिमेंटल एपीआई हटाए जा रहे हैं. (I438cb)
- नई
TabRow
ओवरलोड को बदलकर, सबकंपोज़िशन का इस्तेमाल न करने का विकल्प चुनें. इससे, कस्टम मॉडिफ़ायर के साथTabRow
इंडिकेटर बनाने का एक अलग तरीका मिलता है. (Ife741) DismissDirection
औरDismissValue
एपीआई को बंद कर दिया गया है. इन्हेंSwipeToDismissValue
में मर्ज कर दिया गया है. इसकी वैल्यू से,SwipeToDismissBox
की पोज़िशन और दिशा, दोनों के बारे में पता चलता है.DismissState.progress
को अब0.0
और1.0
के बीचFloatRange
के तौर पर मार्क किया गया है.DismissState
के बंद किए गए Saver और Constructor को अब हटा दिया गया है.SwipeToDismiss
कॉम्पोनेंट, स्टेट, और डिफ़ॉल्ट ऑब्जेक्ट को एक्सपेरिमेंटल के तौर पर फिर से मार्क किया गया है. (Ib54f2)
गड़बड़ियां ठीक की गईं
PullToRefresh
के लिए डिफ़ॉल्ट इंडिकेटर, अब भरे हुए त्रिकोण के बजाय खुला ऐरोहेड है. (I67be3)
वर्शन 1.2.0-alpha12
29 नवंबर, 2023
androidx.compose.material3:material3-*:1.2.0-alpha12
रिलीज़ हो गया है. वर्शन 1.2.0-alpha12 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
RangeSlider
अब Kotlin रेंज लेता है. जैसे,0f..1f
) का इस्तेमाल करें.FloatRange
SnapFlingBehavior.kt
में अब Kotlin रेंज का भी इस्तेमाल किया जाता है. (I025cb)- Mark Modifier फ़ैक्ट्री फ़ंक्शन को
@Stable
के तौर पर मार्क करें. (Ib109f)
वर्शन 1.2.0-alpha11
15 नवंबर, 2023
androidx.compose.material3:material3-*:1.2.0-alpha11
रिलीज़ हो गया है. वर्शन 1.2.0-alpha11 में ये कमिट शामिल हैं.
नई सुविधाएं
- यह
PullToRefreshContainer
औरPullToRefreshState
को लागू करता है. ये दोनों मिलकर, Material3 में रीफ़्रेश करने के लिए पुल की सुविधा देते हैं. (I16456, b/261760718)
एपीआई में हुए बदलाव
SwipeToDismissBox
DismissDirection
औरDismissValue
को एक्सपेरिमेंट के तौर पर मार्क करें. (I517b0)SwipeToDismiss
का नाम बदलकरSwipeToDismissBox
करें.background
का नाम बदलकरbackgroundContent
औरdismissContent
का नाम बदलकर, आखिर में इस्तेमाल होने वालाcontent
lambda करें. (I7f4d3)ChipElevation
औरSelectableChipElevation
के कंस्ट्रक्टर को सार्वजनिक करें. (Ie0c48, b/308432421)ModalBottomSheetProperties
को जोड़ा जा रहा है.securePolicy
कोModalBottomSheetProperties
में ले जाया जा रहा है.isFocusable
औरshouldDismissOnBackPress
कोModalBottomSheetProperties
में जोड़ा जा रहा है. इन नए बूलियन से यह तय करने में मदद मिलती है कि बॉटम शीट वाला मोडल, IME इवेंट को कैसे हैंडल करे. (Iea56f, b/278216859)RangeSlider
औरSlider
की स्थितियों को अपडेट किया गया है, ताकिinitialOnValueChange
, शुरुआती प्रीफ़िक्स, और ज़रूरी केडॉक को हटाया जा सके. (I57d30)ChipBorder
क्लास और उससे जुड़े फ़ंक्शन कॉल को बंद कर दिया गया है. हमारा सुझाव है कि इसके बजाय, सीधेBorderStroke
का इस्तेमाल करें. (I89cc2)- Foundation Tooltip API अब
@ExperimentalFoundationApi
हैं. (I30b0b) TabRow
औरScrollableTabRow
को अब बंद नहीं किया गया है. प्राइमरी और सेकंडरी वैरिएंट के नए वर्शन को एक्सपेरिमेंटल के तौर पर मार्क किया गया है. (I0def6)- फ़िल्टर और इनपुट चिप अब सीधे
BorderStroke
का इस्तेमाल करते हैं. (I07a8d) SegmentedButton
अब सीधे तौर परBorderStroke
का इस्तेमाल करता है. (I89b9b)- सामान्य
AlertDialog
फ़ंक्शन का नाम बदलकरBasicAlertDialog
कर दिया गया है. साथ ही, पिछले फ़ंक्शन को बंद कर दिया गया है. (Idbe52) SwipeToDismiss
एपीआई का नाम बदलकरSwipeDismiss
कर दिया गया है. साथ ही, नएSwipeDismiss
एपीआई को स्टेबल वर्शन के तौर पर प्रमोट किया गया है. (I14cbe)- टूलटिप एपीआई में
tonalElevation
औरshadowElevation
को जोड़ा गया. इसके अलावा,TooltipBox
,PlainTooltip
, औरRichTooltip
एपीआई को वापस एक्सपेरिमेंटल वर्शन में ले जाया गया है, क्योंकि इन्हें गलती से स्टेबल वर्शन के तौर पर रिलीज़ कर दिया गया था. (If0f66, b/293939035) - एक्सपेरिमेंट के तौर पर उपलब्ध चिप एपीआई को स्टेबल वर्शन में प्रमोट करें. (Iea2c3)
- Material3 के क्लिक किए जा सकने वाले कार्ड से
@ExperimentalMaterial3Api
एनोटेशन हटा दिया गया है. (I88dbf)
गड़बड़ियां ठीक की गईं
- नेस्ट किए गए Lookahead और Lazy लेआउट के साथ कुछ स्थितियों में
SwipeToDismiss
के क्रैश होने की समस्या को ठीक किया गया है. (Ica8d1, b/297226562)
वर्शन 1.2.0-alpha10
18 अक्टूबर, 2023
androidx.compose.material3:material3-*:1.2.0-alpha10
रिलीज़ हो गया है. वर्शन 1.2.0-alpha10 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
Badge
औरBadgedBox
को स्टेबल वर्शन में प्रमोट किया जा रहा है. (I67f16, b/261565132)ModalBottomSheet
मेंsecurePolicy
को पैरामीटर के तौर पर जोड़ा गया है, ताकि उपयोगकर्ताWindowManager.LayoutParams.FLAG_SECURE
के लिए व्यवहार तय कर सकें. (Icdac8, b/296250262)LinearProgressIndicator
औरCircularProgressIndicator
के नए ओवरलोड जोड़े गए हैं. येprogress
को लैम्ब्डा के तौर पर लेते हैं. ये पिछले वर्शन से बेहतर परफ़ॉर्म करने चाहिए. (I824e6, b/295616656)StandardSizeClasses
का नाम बदलकरAllSizeClasses
कर देता है. (I8cb07)- विंडो के साइज़ क्लास के हिसाब से कैलकुलेशन करने वाले फ़ंक्शन को जोड़ें. (Iad935)
गड़बड़ियां ठीक की गईं
- जब दिखाया गया महीना, सालों की तय सीमा के आखिर में होता है, तब नेविगेशन ऐरो बटन पर तेज़ी से क्लिक करने पर होने वाली
DatePicker
क्रैश की समस्या को ठीक किया गया है. (I46f36, b/290954897, b/297002119) - [नेविगेशन रेल/बार] इंडिकेटर के लिए पारदर्शी रंग की सुविधा उपलब्ध है. (Ie0a9b, b/267289987)
वर्शन 1.2.0-alpha09
4 अक्टूबर, 2023
androidx.compose.material3:material3-*:1.2.0-alpha09
रिलीज़ हो गया है. वर्शन 1.2.0-alpha09 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- नए
AnchoredDraggable
एपीआई का इस्तेमाल करने के लिए,ModalNavigationDrawer
औरDismissibleNavigationDrawer
को माइग्रेट किया गया.DrawerState
केanimateTo
को अब open और close तरीकों से बदल दिया गया है. साथ ही, ऑफ़सेट को अब स्टेट ऑब्जेक्ट के बजाय फ़्लोट के तौर पर दिखाया जाता है. ऑफ़सेट को सीधेcurrentOffset
के ज़रिए ऐक्सेस किया जा सकता है. (I0a72c) DatePickerState
औरDateRangePickerState
को सीधे तौर पर बनाने के लिए, नॉन-कंपोज़ेबल फ़ंक्शन जोड़े गए हैं. ज़रूरत पड़ने पर, इन फ़ंक्शन का इस्तेमाल कंपोज़ेबलrememberDatePickerState
औरrememberDateRangePickerState
फ़ंक्शन के विकल्प के तौर पर किया जा सकता है. (I70326, b/291524052)- फ़िक्स्ड और स्क्रोल किए जा सकने वाले
TabRows
में अब प्राइमरी और सेकंडरी वैरिएंट उपलब्ध हैं. ये Material3 में तय किए गए रंग और इंडिकेटर के व्यवहार के हिसाब से सही तरीके से मैप किए गए हैं. PrimaryScrollableTabRow
औरSecondaryScrollableTabRow
अब स्क्रोल की स्थिति दिखाते हैं. (Iec8f5, b/260572337)- एक नया
sheetMaxWidth
पैरामीटर जोड़ा गया है. डेवलपर इसे सेट करके, शीट की ज़्यादा से ज़्यादा चौड़ाई तय कर सकते हैं. अगर आपको पूरी स्क्रीन की चौड़ाई वाली शीट चाहिए, तो पैरामीटर के लिए Dp.Unspecified पास किया जा सकता है. (Ifb7c9, b/266697696) PlainTooltipBox
औरRichTooltipBox
एपीआई को, इस्तेमाल नहीं किए जा सकने वाले तरीकों के तौर पर फिर से जोड़ा गया है. (I246fa)
गड़बड़ियां ठीक की गईं
DatePicker
को ऐसेDatePickerFormatter
के साथ शुरू करने पर होने वाली क्रैश की समस्या ठीक की गई है जिसमें तारीख के कुछ ऐसे स्केलेटन होते हैं जो तारीख के पैटर्न (जैसे, YY) में बदलने पर भी एक जैसे रहते हैं. (I01f29)
वर्शन 1.2.0-alpha08
20 सितंबर, 2023
androidx.compose.material3:material3-*:1.2.0-alpha08
रिलीज़ हो गया है. वर्शन 1.2.0-alpha08 में ये कमिट शामिल हैं.
व्यवहार में नुकसान पहुंचाने वाला बदलाव
ColorScheme
अब बदला नहीं जा सकता. इसलिए, अलग-अलग रंगों को अपडेट करना कम असरदार हो गया है. हालांकि, रंगों का ज़्यादा इस्तेमाल करना ज़्यादा असरदार हो गया है. इस बदलाव की वजह यह है कि ज़्यादातर ऐप्लिकेशन में, अलग-अलग रंगों को अपडेट करने की सुविधा का इस्तेमाल मुख्य तौर पर नहीं किया जाता. अब भी ऐसा किया जा सकता है, लेकिन इससे पहले की तुलना में ज़्यादा कोड फिर से कंपोज़ होगा. इससे Material कोड के ज़रिए, स्टेट की सदस्यताएं लेने की संख्या में काफ़ी कमी आएगी. साथ ही, इससे ज़्यादा स्टैंडर्ड इस्तेमाल के उदाहरणों की शुरुआती और रनटाइम लागत पर असर पड़ेगा. (Ic447d, b/297212873)- टोनल एलिवेशन अब अलग-अलग इंटरैक्शन स्टेट में ऐनिमेट नहीं होता है, ताकि स्पेसिफ़िकेशन से मेल खा सके. (Icdd12)
एपीआई में हुए बदलाव
- एक नया
BottomAppBar
जोड़ा गया है. यहBottomAppBarScrollBehavior
को पैरामीटर के तौर पर लेता है, ताकि कॉन्टेंट स्क्रोल करने पर यह अपने-आप छिप जाए.FabPosition.EndOverlay
को भी जोड़ा गया है. इससे FAB को ऐंकर करने के बजाय, उसे स्कैफ़ोल्ड में सबसे नीचे मौजूद ऐप्लिकेशन बार पर ओवरले किया जा सकता है. (Iecb47) - एक सामान्य लेबल कॉम्पोनेंट जोड़ा गया है, जो
BasicTooltipBox
के ऊपर बनाया गया है. लेबल की सीमाओं के बाहर टैप करने पर यह खारिज नहीं होगा. (I821f9)
गड़बड़ियां ठीक की गईं
- टूलटिप के लिए
rememberSaveable
का इस्तेमाल बंद कर दिया गया है. (Icc131, b/299500338) - एक अस्थायी फ़्लैग जोड़ा गया है. इससे यह कंट्रोल किया जा सकेगा कि मेज़रमेंट के दौरान या प्लेसमेंट के दौरान, Scaffold को अपने चाइल्ड विजेट का मेज़रमेंट करना चाहिए या नहीं. डिफ़ॉल्ट रूप से, इसे मेज़रमेंट में मेज़र किया जाएगा. अगर आपको नई सुविधा से जुड़ी कोई समस्या आ रही है, तो कृपया इसकी शिकायत करें. (I0b354)
- डिवाइस की स्क्रीन की चौड़ाई के लिए सही मेज़रमेंट का इस्तेमाल करके,
BottomSheet
में हॉरिज़ॉन्टल तौर पर Edge to Edge फ़िक्स किया गया. (I1df0c, b/299058752) - उस गड़बड़ी को ठीक किया गया है जिसमें शीट पर नीचे की ओर स्वाइप करके खारिज करने पर,
ModalBottomSheet
,onDismissedRequest
को कॉल नहीं कर रहा था. (Idfdd8)
वर्शन 1.2.0-alpha07
6 सितंबर, 2023
androidx.compose.material3:material3-*:1.2.0-alpha07
रिलीज़ हो गया है. वर्शन 1.2.0-alpha07 में ये कमिट शामिल हैं.
नई सुविधाएं
compose material 1.6.0-alpha05
में, अपने-आप मिरर होने वाले आइकॉन की सुविधा जोड़ी गई है. अपने-आप मिरर होने वाले आइकॉन के बारे में ज़्यादा जानने के लिए, कृपया रिलीज़ नोट देखें.
एपीआई में हुए बदलाव
SliderState
,DraggableState
(I9b116) को लागू करता है- आकार को ज़रूरी पैरामीटर के तौर पर बदलें. शेप हेल्पर फ़ंक्शन में,
position
का नाम बदलकरindex
करें. (I34941) - यह कुकी,
DatePicker
formatWithSkeleton
को अपडेट करती है, ताकि परफ़ॉर्मेंस को बेहतर बनाने के लिए कैश मेमोरी के तौर पर इस्तेमाल किए जाने वाले मैप को शामिल किया जा सके. (I3195f) compose.foundation
मेंBasicTooltipBox
जोड़ा गया है. साथ ही,PlainTooltipBox
औरRichTooltipBox
को अपडेट किया गया है, ताकि नएPlainTooltip
औरRichTooltip
कंपोज़ेबल के साथTooltipBox
का इस्तेमाल किया जा सके. (I79e1d)
गड़बड़ियां ठीक की गईं
dynamicLightColorScheme
औरdynamicDarkColorScheme
अब सर्फ़ेस औरsurfaceContainer
रोल के लिए, ज़्यादा क्रोमा वाले रंग दिखाते हैं. (I5e901)- हमने उस समस्या को ठीक कर दिया है जिसमें
LookaheadScope
के अंदर मौजूद Scaffold के अंदर Subcomposition (जैसे किBottomSheetScaffold
) का इस्तेमाल करने वाले कुछ कॉम्पोनेंट, अपने साइज़ को बहुत पहले पढ़ने की कोशिश कर रहे थे. (I297b4, I871f1, b/295536718)
वर्शन 1.2.0-alpha06
23 अगस्त, 2023
androidx.compose.material3:material3-*:1.2.0-alpha06
रिलीज़ हो गया है. वर्शन 1.2.0-alpha06 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
DropdownMenu
'soffset
की कैलकुलेशन में सुधार किया गया है, ताकि x ऑफ़सेट सिर्फ़ स्थानीय लेआउट की दिशा पर निर्भर करें. साथ ही, जब मेन्यू स्क्रीन के सबसे नीचे होगा, तब y ऑफ़सेट अब उलट नहीं जाएंगे. (Iccc74, b/294103942)DropdownMenu
'soffset
की कैलकुलेशन में सुधार किया गया है, ताकि x ऑफ़सेट सिर्फ़ स्थानीय लेआउट की दिशा पर निर्भर करें. साथ ही, जब मेन्यू स्क्रीन के सबसे नीचे होगा, तब y ऑफ़सेट अब उलट नहीं जाएंगे. (Ib87a2, b/294103942)
वर्शन 1.2.0-alpha05
9 अगस्त, 2023
androidx.compose.material3:material3-*:1.2.0-alpha05
रिलीज़ हो गया है. वर्शन 1.2.0-alpha05 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- चेकबॉक्स और
TriStateCheckbox
रंगों से जुड़े अपडेट.CheckboxDefaults.colors()
disabledUncheckedColor
अब सिर्फ़ चेकबॉक्स के बॉर्डर पर असर डालता है. कुछ खास मामलों में, जब चेकबॉक्स बंद हो और उस पर सही का निशान न लगा हो, तब आपको बॉक्स के अंदर का रंग सेट करना होता है. इसके लिए, आपकोCheckboxColors
का कस्टम इंस्टेंस बनाना होगा. इसमें रंग की वैल्यू आपकी पसंद के मुताबिक होंगी. (I77d17, b/291943198)
वर्शन 1.2.0-alpha04
26 जुलाई, 2023
androidx.compose.material3:material3-*:1.2.0-alpha04
रिलीज़ हो गया है. वर्शन 1.2.0-alpha04 में ये कमिट शामिल हैं.
नई सुविधाएं
- एक्सपेरिमेंट के तौर पर उपलब्ध Segmented Button API (Ifc8fb)
- अब डिवाइडर में ओरिएंटेशन को कंट्रोल करने के लिए एक पैरामीटर होता है, ताकि वर्टिकल डिवाइडर का इस्तेमाल किया जा सके. (I4c899, b/288438593)
एपीआई में हुए बदलाव
- हम डेंसिटी डिपेंडेंसी को कॉम्पोनेंट लेवल पर ले जा रहे हैं. यह इन कॉम्पोनेंट पर लागू होता है:
SwipeToDismiss
और शीट पर आधारित कॉम्पोनेंट. कृपया उस नए ओवरलोड का इस्तेमाल करें जहां डेंसिटी एक पैरामीटर है. (I1846e) - कंपोज़ेबल में इस्तेमाल किए जा सकने वाले इनपुट तय करने के लिए अतिरिक्त एनोटेशन (Ief234)
- सेगमेंट किए गए बटन में आइकॉन पैरामीटर जोड़ें. साथ ही, सिमैंटिक को इस तरह से बांटें कि सेगमेंट किए गए बटन को चुना जा सके. इससे सिंगल-सिलेक्ट को लागू किया जा सकेगा. साथ ही, टॉगल किया जा सकेगा, ताकि मल्टी-सिलेक्ट को लागू किया जा सके. इसके लिए,
SelectableSegmentedButtonRow
औरToggelableSegmentedButtonRow
का इस्तेमाल किया जाएगा. (I38740) - डिवाइडर का नाम बदलकर
HorizontalDivider
कर दिया गया है.VerticalDivider
की सुविधा जोड़ी गई. (I5975c) - ऑटोबॉक्सिंग को कम करने के लिए, एक्सपेरिमेंट के तौर पर उपलब्ध Material3 एपीआई में,
ClosedFloatingPointRange
के बजायFloatRange
का इस्तेमाल करें. (I4aab5) FabPosition
के लिए नया स्टार्ट अलाइनमेंट जोड़ा गया (Ib7aea, b/170592777)
गड़बड़ियां ठीक की गईं
ModalBottomSheet
स्थानीय लेआउट की दिशा का पालन करता है. (Ib4f44, b/285628622)
वर्शन 1.2.0-alpha03
21 जून, 2023
androidx.compose.material3:material3-*:1.2.0-alpha03
रिलीज़ हो गया है. वर्शन 1.2.0-alpha03 में ये कमिट शामिल हैं.
व्यवहार में बदलाव
- Material 3 टाइपोग्राफ़ी में,
includeFontPadding
अब डिफ़ॉल्ट रूप सेfalse
है. डिफ़ॉल्ट लाइन की ऊंचाई की स्टाइल को भीTrim.None
औरAlignment.Center
में बदल दिया गया है. साथ ही,Typography
केTextStyle
मेंlineHeight
(sp में) जोड़ दिया गया है. अगर आपको इन वैल्यू को पसंद के मुताबिक बनाना है, तो एपीआई के दस्तावेज़ पढ़ें. साथ ही, इन बदलावों के बारे में ज़्यादा जानकारी पाने के लिए, ब्लॉग पोस्ट पढ़ें. (I6266f, Icabc3)
नई सुविधाएं
RangeSlider
के लिए एक ओवरलोड जोड़ा गया है, जो कॉम्पोनेंट का स्टेटफ़ुल वर्शन है.RangeSliderState
बनाया गया है. इसमें मौजूदा ऐक्टिव ट्रैक की पूरी जानकारी,RangeSlider
के कॉम्पोनेंट के मेज़रमेंट, और ड्रैग और जेस्चर लॉजिक की जानकारी शामिल होती है. (I8c270)- सर्च बार में अब नई जोड़ी गई
shadowElevation
पैरामीटर की मदद से शैडो का इस्तेमाल किया जा सकता है. (Ia5369, b/271040353) ColorScheme
में अबSurfaceContainer
की नई भूमिकाओं का इस्तेमाल किया जा सकता है.- अब
LocalTonalElevationEnabled
कंपोज़िशन लोकल की मदद से, सर्फ़ेस टोनल एलिवेशन ओवरले को बंद किया जा सकता है. (Ic203c, b/277774590)
एपीआई में हुए बदलाव
- कॉम्पोनेंट के रंगों के कंस्ट्रक्टर खोलें. (I8c4a6)
- दोनों टूलटिप एपीआई में फ़ोकस किया जा सकने वाला पैरामीटर जोड़ा गया है, ताकि डेवलपर यह तय कर सकें कि टूलटिप को टच इवेंट इस्तेमाल करने चाहिए या नहीं. ध्यान रखें कि इससे, सुलभता फ़ोकस के अपने-आप ट्रैवर्स होने की सुविधा काम नहीं करेगी. (Ie32d8)
- परफ़ॉर्मेंस और मेमोरी के लिए, सुलभता को ऑप्टिमाइज़ किया गया है. (Iede48)
WindowSizeClasses
(I91838) के लिएDefaultSizeClasses
को सार्वजनिक करें औरStandardSizeClasses
बनाएंWindowWidth/HeightSizeClass
को फ़्लोट वैल्यू क्लास (Ie686e) में बदलें
गड़बड़ियां ठीक की गईं
- Scaffold के
contentWindowInsets
पैरामीटर में, अब इस्तेमाल की गई विंडो इनसेट का ध्यान रखा जाता है. ध्यान दें कि इन पैरामीटर को उपलब्ध कराने पर,topBar
औरbottomBar
के आधार पर कॉन्टेंट पैडिंग के व्यवहार में कोई बदलाव नहीं होता है. (I08b73, b/264601542) - सेंटर टॉप ऐप्लिकेशन बार के अलाइनमेंट को ठीक करें, ताकि लंबा टाइटल ऐक्शन आइकॉन या नेविगेशन आइकॉन पर रेंडर न हो. (I4369f, b/236994621)
- टैब की पोज़िशन के लिए, अब कॉन्टेंट की कम से कम चौड़ाई 24.dp होनी चाहिए. इससे टैब इंडिकेटर के लिए, आसानी से ऐक्सेस किया जा सकने वाला टच टारगेट मिलता है. (Id8861)
dynamicLightColorScheme
औरdynamicDarkColorScheme
की डाइनैमिक कलर पैलेट की सुविधा अब नई सर्फ़ेस भूमिकाओं के साथ काम करती है. (I1252e)- बैज की सूचना के अलाइनमेंट को अपडेट किया गया है, ताकि दादा-दादी के साथ टकराने पर वह न कटे. (Idf75a)
वर्शन 1.2.0-alpha02
24 मई, 2023
androidx.compose.material3:material3-*:1.2.0-alpha02
रिलीज़ हो गया है. वर्शन 1.2.0-alpha02 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
ModalBottomSheet
में window insets पैरामीटर जोड़ें.ModalBottomSheet
के लिए स्क्रिम को अब स्टेटस बार के पीछे बनाया जा सकता है. इसके लिए,windowInsets
को शून्य पर सेट करें- सिस्टम बार (जैसे, नेविगेशन बार) से बाहर रहने के लिए,
ModalBottomSheet
की डिफ़ॉल्ट सेटिंग को अपडेट किया गया - एज-टू-एज मोड में, स्टेटस बार के इंसर्ट को ड्रैग हैंडल की मदद से मैनेज किया जाता है.
BottomSheetDefaults
मेंBottomSheetWindow
के लिए विंडो इनसेट शामिल हैं. (I31200, b/274872542, b/272973615, b/272334475, b/268432129, b/275849044, b/275486106, b/268433162)
- M3 के स्पेसिफ़िकेशन से मेल खाने के लिए,
Indicator
को बंद करें औरPrimary
/SecondaryIndicator
जोड़ें.PrimaryIndicator
, टैब के कॉन्टेंट की चौड़ाई से मेल खाता है, जबकिSecondaryIndicator
, उपलब्ध पूरी चौड़ाई में फैला होता है.SecondaryIndicator
, अब इस्तेमाल नहीं किए जा रहेIndicator
के बराबर है और इसे सीधे तौर पर बदला जा सकता है. (I27604) - दिखाए गए मेन्यू आइटम के वर्टिकल स्क्रोल की स्थिति को कंट्रोल करने के लिए,
DropdownMenu
याExposedDropdownMenu
बनाते समयScrollState
को पास करने का विकल्प जोड़ा गया. (Ia0734, b/185304441) Slider
के लिए एक ओवरलोड जोड़ा गया है, जो कॉम्पोनेंट का स्टेटफ़ुल वर्शन है.SliderState
बनाया गया है. इसमें मौजूदा ऐक्टिव ट्रैक की पूरी जानकारी,Slider
के कॉम्पोनेंट के मेज़रमेंट, और ड्रैग और जेस्चर लॉजिक की जानकारी शामिल होती है. (I124a5)- सिमैंटिक्स प्रॉपर्टी
isContainer
का नाम बदलकरisTraversalGroup
किया जा रहा है (I121f6) - पूरी पैरामीटर सूची के साथ ऑप्टिमाइज़ किया गया
TextStyle.merge(...)
जोड़ा गया. (Iad234, b/246961787) TooltipState
,RichTooltipState
, औरPlainTooltipState
को सार्वजनिक इंटरफ़ेस बनाया गया. डिफ़ॉल्ट स्टेटस के लिएRichTooltipStateImpl
औरPlainTooltipStateImpl
जोड़े गए. इन लागू की गई स्थितियों को पाने के लिए,remember*State
फ़ंक्शन जोड़े गए.TooltipDefault.GlobalMutatorMutex
के पक्ष मेंTooltipSync
को हटाया गया. (I7813d)DatePickerColors
को अपडेट किया गया है, ताकि तारीख चुनने वाले टूल के डिवाइडर, नेविगेशन, और टेक्स्ट इनपुट फ़ील्ड के रंगों को पसंद के मुताबिक बनाने के ज़्यादा विकल्प शामिल किए जा सकें. (I1a685, b/274626815)DatePickerState
औरDateRangePickerState
अब सार्वजनिक इंटरफ़ेस हैं. इनमें डिफ़ॉल्ट तौर पर लागू किए गए फ़ंक्शन होते हैं, जिन्हेंrememberDatePickerState
औरrememberDateRangePickerState
से वापस पाया जा सकता है. (I71c52)dateValidator
कोDatePicker
औरDateRangePicker
से हटा दिया गया है. साथ ही,SelectableDates
इंटरफ़ेस लॉन्च किया गया है. इसे स्टेट पर सेट किया जा सकता है, ताकि यह कंट्रोल किया जा सके कि यूज़र इंटरफ़ेस (यूआई) में कौनसी तारीखें या साल चुने जा सकते हैं. (Ic2fc6)TimePicker
को स्टेबल एपीआई से हटा दिया गया है. स्टेट एपीआई (I3f39a) में और बदलाव होने की उम्मीद हैModalBottomSheet
को सिर्फ़ Android पर ले जाया गया. डेस्कटॉप परModalBottomSheet
का इस्तेमाल करने का सुझाव नहीं दिया जाता. साथ ही, इस सुविधा को सक्रिय रूप से मैनेज नहीं किया जाता. (Ib3778)
गड़बड़ियां ठीक की गईं
- डायलॉग की चौड़ाई में फ़िट होने के लिए, कार्रवाइयों को एक-दूसरे के ऊपर स्टैक करने पर, पुष्टि करने की कार्रवाई के नीचे
AlertDialog
खारिज करने की कार्रवाई दिखने की समस्या ठीक की गई. इस फ़िक्स से, मटीरियल डिज़ाइन स्पेसिफ़िकेशन के मुताबिक लागू करने में मदद मिलती है. (I029de, b/235454277) ListItem
में मौजूद उस बग को ठीक किया गया है जिसमें तीन लाइन आइटम के लिए गलत पैडिंग का इस्तेमाल किया गया था. (I6e235)ModalBottomSheet
अब IME कीबोर्ड दिखा सकता है (Idc508, b/262140644, b/268380384, b/272483584)
वर्शन 1.2.0-alpha01
10 मई, 2023
androidx.compose.material3:material3:1.2.0-alpha01
और androidx.compose.material3:material3-window-size-class:1.2.0-alpha01
रिलीज़ हो गए हैं. वर्शन 1.2.0-alpha01 में ये कमिट शामिल हैं.
वर्शन 1.1
वर्शन 1.1.2
20 सितंबर, 2023
androidx.compose.material3:material3:1.1.2
और androidx.compose.material3:material3-window-size-class:1.1.2
रिलीज़ हो गए हैं. वर्शन 1.1.2 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- मॉडिफ़ायर को दो कंपोज़ेबल में गलत तरीके से पास किए जाने की समस्या ठीक की गई. (b/282761472)
- Fixed
TimePickerState
फ़ंक्शन को 23 घंटे के साथ शुरू करने पर, गलत घंटे दिखाता है. (b/278242122) - दोपहर और मिनट की पुष्टि के लिए, टॉगल की शुरुआती स्थिति को ठीक किया गया. (b/269768197, b/282790635)
- रात 11 बजे के लिए,
state.hour
की गलत वैल्यू दिखाने की समस्या ठीक की गई. (b/282761472, b/278242122)
वर्शन 1.1.1
21 जून, 2023
androidx.compose.material3:material3:1.1.1
और androidx.compose.material3:material3-window-size-class:1.1.1
रिलीज़ हो गए हैं. वर्शन 1.1.1 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- यह बाइनरी कंपैटिबिलिटी के लिए,
windowInset
पैरामीटर के बिनाModalBottomSheet
के लिए कॉल जोड़ता है. (Ib7959) ModalBottomSheet
में window insets पैरामीटर जोड़ें.ModalBottomSheet
के लिए स्क्रिम को अब स्टेटस बार के पीछे बनाया जा सकता है. इसके लिए,windowInsets
को शून्य पर सेट करें- सिस्टम बार (जैसे, नेविगेशन बार) से बाहर रहने के लिए,
ModalBottomSheet
की डिफ़ॉल्ट सेटिंग को अपडेट किया गया - एज-टू-एज मोड में, स्टेटस बार के इंसर्ट को ड्रैग हैंडल की मदद से मैनेज किया जाता है.
BottomSheetDefaults
मेंBottomSheetWindow
के लिए विंडो इनसेट शामिल हैं. (I31200, b/274872542, b/272973615, b/272334475, b/268432129, b/275849044, b/275486106, b/268433162)
वर्शन 1.1.0
10 मई, 2023
androidx.compose.material3:material3:1.1.0
और androidx.compose.material3:material3-window-size-class:1.1.0
रिलीज़ हो गए हैं. वर्शन 1.1.0 में ये कमिट शामिल हैं.
1.1.0 की मुख्य सुविधाएं
Material Design 3 के नए कॉम्पोनेंट
मौजूदा Material Design 3 कॉम्पोनेंट को बेहतर बनाया गया है.
एक्सपेरिमेंटल एपीआई को स्टेबल वर्शन में प्रमोट किया गया!
ज़्यादा जानकारी के लिए, कृपया यह ब्लॉग पोस्ट देखें!
वर्शन 1.1.0-rc01
19 अप्रैल, 2023
androidx.compose.material3:material3:1.1.0-rc01
और androidx.compose.material3:material3-window-size-class:1.1.0-rc01
रिलीज़ हो गए हैं. वर्शन 1.1.0-rc01 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
TimePicker
को स्टेबल एपीआई से हटा दिया गया है. स्टेट एपीआई (I3f39a) में और बदलाव होने की उम्मीद हैModalBottomSheet
को सिर्फ़ Android पर ले जाया गया. डेस्कटॉप परModalBottomSheet
का इस्तेमाल करने का सुझाव नहीं दिया जाता. साथ ही, इस सुविधा को सक्रिय रूप से मैनेज नहीं किया जाता. (Ib3778)
वर्शन 1.1.0-beta02
5 अप्रैल, 2023
androidx.compose.material3:material3:1.1.0-beta02
और androidx.compose.material3:material3-window-size-class:1.1.0-beta02
रिलीज़ हो गए हैं. वर्शन 1.1.0-beta02 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
SheetState
में अबskipHiddenState
पैरामीटर को शामिल करना ज़रूरी नहीं हैrememberStandardBottomSheetState
में अबskipHiddenState
पैरामीटर को शामिल करना ज़रूरी नहीं हैBottomSheetScaffold
में अब एक तय किया गया छिपा हुआ ऐंकर है. हालांकि, यह डिफ़ॉल्ट रूप से बंद होता हैSheetState.requireOffset
दस्तावेज़ अपडेट किया गया हैBottomSheetDefaults.MinimizedShape
का नाम बदलकरBottomSheetDefaults.HiddenShape
(I839f4, b/273870234) कर दिया गया है
गड़बड़ियां ठीक की गईं
- छूकर एक्सप्लोर करने की सुविधा चालू होने पर, डायल फ़ेस को घंटे से मिनट पर स्विच न करें. (I717d0)
ModalBottomSheet
औरBottomSheetScaffold
ड्रैग हैंडल के सिमैंटिक अब मर्ज हो गए हैं. (I05afb)BottomSheetScaffold
मॉडिफ़ायर,containerColor
, औरcontentColor
पैरामीटर का असर अब सिर्फ़ कॉन्टेंट पर पड़ता है. (I992cb)BottomSheetScaffold nestedScroll
में अब शीट के कॉन्टेंट के लिए फ़्लिंग की सुविधा लागू की गई है. (I992cb)
वर्शन 1.1.0-beta01
22 मार्च, 2023
androidx.compose.material3:material3:1.1.0-beta01
और androidx.compose.material3:material3-window-size-class:1.1.0-beta01
रिलीज़ हो गए हैं. वर्शन 1.1.0-beta01 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
TimePicker
कंपोज़ेबल में लेआउट टाइप पैरामीटर जोड़ें. इससे स्क्रीन कॉन्फ़िगरेशन (Ia0e16) के आधार पर अलग-अलग लेआउट इस्तेमाल किए जा सकते हैंSearchBarDefaults
को एक्सपेरिमेंट के तौर पर मार्क किया गया है. (I65561)BottomSheetScaffold
(I94e0f) में शैडो एलिवेशन जोड़ा गया- हेडर वाले हिस्से के बिना तारीख चुनने वाले टूल दिखाने की सुविधा जोड़ी गई. तारीख चुनने वाला टूल बनाते समय, शून्य हेडलाइन पास करने की अनुमति देने के लिए एपीआई में बदलाव किए गए हैं. अब हेडलेस पिकर दिखाने के लिए, हेडलाइन, टाइटल, और
showToggleMode = false
को शून्य के तौर पर पास किया जा सकता है. (Id3f3a, b/266132421, b/267194809)
गड़बड़ियां ठीक की गईं
- अब सर्च बार के इनऐक्टिव होने पर, फ़ोकस अपने-आप हट जाता है. (I22a7c, b/261444487)
DateRangePicker
को अपडेट किया गया है, ताकि शुरू और खत्म होने की तारीख के लिए एक ही तारीख वाली सीमा को चुना जा सके. (I16529, b/272882497)- टेक्स्ट फ़ील्ड अब टेक्स्ट एलिमेंट को सही तरीके से पोज़िशन करते हैं, जब फ़ॉन्ट का साइज़ उम्मीद से कम होता है. फ़ॉन्ट की सेटिंग और स्क्रिप्ट के आधार पर, आपके ऐप्लिकेशन में कुछ पिक्सल का बदलाव हो सकता है. (I8b8d0)
- बॉटम शीट में मौजूद सिमैंटिक कार्रवाइयों में अब लेबल मौजूद हैं. (I277b0)
वर्शन 1.1.0-alpha08
8 मार्च, 2023
androidx.compose.material3:material3:1.1.0-alpha08
और androidx.compose.material3:material3-window-size-class:1.1.0-alpha08
रिलीज़ हो गए हैं. वर्शन 1.1.0-alpha08 में ये कमिट शामिल हैं.
नई सुविधाएं
BottomSheetScaffold
औरBottomSheetScaffoldState
के लिए सहायता जोड़ी गई. (I063d4)
एपीआई में हुए बदलाव
DatePickerState
औरDateRangePickerState
में यह सुविधा जोड़ी गई है. इससे, स्थिति बनने के बाद तारीखें सेट की जा सकती हैं. साथ ही, शून्य टाइमस्टैंप सेट करके चुने गए विकल्पों को रीसेट किया जा सकता है. तारीखें मैन्युअल तरीके से सेट करते समय सावधानी बरतनी चाहिए. साथ ही, अगर दी गई तारीख, पहले से तय की गई शर्त को पूरा नहीं करती है, तो नयाsetSelection
फ़ंक्शन एक अपवाद दिखाएगा. इसके बारे में जानने के लिए, दस्तावेज़ देखें. (Ifa645, b/268609314, b/270427389)- इस स्थिति में व्यवहार को ज़्यादा सटीक और आसानी से दिखाने के लिए, Collapsed
SheetValue
का नाम बदलकरPartiallyExpanded
कर दिया गया है. (Ia1491) ListItem
पैरामीटर के नामों को _text के बजाय _content के तौर पर अपडेट किया गया. डिफ़ॉल्ट गेटर अबReadOnlyComposables
हैं. (I69a25)- इंटरैक्टिव Surface API को एक्सपेरिमेंटल से ग्रेजुएट करें. (I90d59, b/261561812)
गड़बड़ियां ठीक की गईं
- उस समस्या को ठीक कर दिया गया है जिसकी वजह से
ModalBottomSheet
केHalfExpanded
की स्थिति का हिसाब गलत तरीके से लगाया जाता था. साथ ही, शीट फ़्लोटिंग के तौर पर दिखती थी. (I45e84, b/268411386) ModalBottomSheet
के लिए, स्क्रिम टैप मेंconfirmValueChange
चेक जोड़ें. (I2311a, b/270425759)- सिमैंटिक
BottomSheet
कार्रवाइयों को खींचने वाले हैंडल पर ले जाएं. (I158ba) ModalBottomSheet
अब लॉन्च पर फ़ोकस करता है और 'वापस जाएं' बटन को हैंडल करता है. (I4d2ab)ModalBottomSheet onDismissRequest
को अब नेस्ट किए गए स्क्रोल फ़्लिंग के दौरान भी हैंडल किया जाता है. (I655c5, b/268433166)
वर्शन 1.1.0-alpha07
22 फ़रवरी, 2023
androidx.compose.material3:material3:1.1.0-alpha07
और androidx.compose.material3:material3-window-size-class:1.1.0-alpha07
रिलीज़ हो गए हैं. वर्शन 1.1.0-alpha07 में ये कमिट शामिल हैं.
नई सुविधाएं
rememberTimePickerState()
के साथ काम करने वाला टाइम इनपुट कंपोज़ेबल जोड़ें. यह टाइम इनपुट (Ia4fab) के लिए M3 स्पेसिफ़िकेशन का पालन करता है- तारीख की सीमा चुनने के लिए, Material 3
DateRangePicker
API जोड़ा गया. (I7a6c3, b/267194809) DateRangePicker
API के ज़रिए तारीख की सीमाएं चुनने के लिए, Material 3 इनपुट मोड की सुविधा जोड़ी गई है. (Ifdbc4)- टेक्स्ट फ़ील्ड के रंगों को अब पसंद के मुताबिक बनाया जा सकता है:
- फ़ोकस और गड़बड़ी की स्थिति के आधार पर, इनपुट फ़ील्ड और प्लेसहोल्डर टेक्स्ट के रंग.
textColor
पैरामीटर का नाम बदलकरunfocusedTextColor
कर दिया गया है. साथ ही,placeholderColor
का नाम बदलकरunfocusedPlaceholderColor
कर दिया गया है. errorContainerColor
पैरामीटर के साथ, गड़बड़ी की स्थिति के आधार पर भरे गए टेक्स्ट फ़ील्ड के लिए कंटेनर का रंग.
- फ़ोकस और गड़बड़ी की स्थिति के आधार पर, इनपुट फ़ील्ड और प्लेसहोल्डर टेक्स्ट के रंग.
- नए प्रीफ़िक्स और सफ़िक्स एपीआई के साथ काम करने के लिए, दिखाए गए ड्रॉपडाउन मेन्यू के टेक्स्ट फ़ील्ड के रंगों को पैरामीटर के साथ अपडेट किया गया है. (I9c8b4, b/254284181, b/264766350)
एपीआई में हुए बदलाव
- Slider API के कुछ वर्शन को पहले जैसा किया गया है. साथ ही, स्लाइडर के ऐसे फ़ंक्शन हटाए गए हैं जो नए एक्सपेरिमेंटल स्लाइडर में मौजूद हैं. इस स्लाइडर में कस्टम थंब और ट्रैक की सुविधा है.
RangeSlider
को स्टेबल वर्शन के तौर पर प्रमोट किया जा रहा है. (Ie8fbd) - चिप के एलिवेशन फ़ंक्शन में,
defaultElevation
का नाम बदलकरelevation
कर दिया गया है. (I0f872) - Material 3 के ये टेक्स्ट फ़ील्ड एपीआई अब एक्सपेरिमेंटल नहीं हैं:
TextField
,OutlinedTextField
,textFieldWithLabelPadding
,textFieldWithoutLabelPadding
,outlinedTextFieldPadding
. (Ieb5c0, b/261561819) TimePickers
is24Hour
सिस्टम सेटिंग का इस्तेमाल करता है (I18856)- स्काफ़ोल्ड एपीआई से एक्सपेरिमेंटल एनोटेशन हटाया गया. (Ibb51e, b/261565765, b/261436953)
गड़बड़ियां ठीक की गईं
ModalBottomSheet
का डिफ़ॉल्ट आकार अब हमेशाSheetDefaults.ExpandedShape
होता है. (I0dfca)- Material 3
DatePicker
औरDateRangePicker
के लिए, सुलभता सुविधाओं में सुधार किए गए हैं. (I5087e) - उस गड़बड़ी को ठीक किया गया है जिसमें ज़्यादा से ज़्यादा ऊंचाई की सीमा लागू की जाती है और इससे ऐप्लिकेशन क्रैश हो सकता है. (I30d8c)
- क्लिक किए जा सकने वाले और चुने जा सकने वाले सर्फ़ेस से सिमैंटिक भूमिकाएं हटा दी गई हैं. साथ ही, उन कॉम्पोनेंट को अपडेट कर दिया गया है जो modifier.semantics का इस्तेमाल करके भूमिकाएं सेट करते थे (I793d9)
वर्शन 1.1.0-alpha06
8 फ़रवरी, 2023
androidx.compose.material3:material3:1.1.0-alpha06
और androidx.compose.material3:material3-window-size-class:1.1.0-alpha06
रिलीज़ हो गए हैं. वर्शन 1.1.0-alpha06 में ये कमिट शामिल हैं.
नई सुविधाएं
- टेक्स्ट फ़ील्ड में अब प्रीफ़िक्स और सफ़िक्स टेक्स्ट इस्तेमाल किया जा सकता है (Ia8578, b/179884561)
- Material 3 स्पेसिफ़िकेशन के मुताबिक टाइम पिकर दिखाने के लिए,
TimePicker
फ़ंक्शन जोड़ा गया. इसका इस्तेमालTimePickerState
और सुविधा वाले तरीकेrememberTimePickerState
के साथ किया जाता है (I71910) DatePicker
पर तारीख डालने की सुविधा, अब डिसप्ले मोड में उपलब्ध है. डेट पिकर और तारीख डालने के मोड के बीच स्विच करने की सुविधा जोड़ी गई. (Ieeff7)RichTextTooltips
के लिए एपीआई जोड़ा गया. (I58ef3)- Material 3 के लिए मॉडल बॉटम शीट लागू की गई है. इसमें
ModalBottomSheet
औरModalBottomSheetDefaults
शामिल हैं. इसमेंSheetState
औरrememberSheetState
भी शामिल हैं. इनका इस्तेमाल आने वाले समय में शीट कॉम्पोनेंट के लिए किया जा सकता है. (I0853a, b/244189383)
एपीआई में हुए बदलाव
- एपीआई को स्थिर करें
showSnackbar
(I195c2, b/261424370) - सहायता करने वाले चिप और सुझाव वाले चिप के लिए एपीआई को स्थिर करें (Ibb67b, b/261424370)
ListItem
,ListItemDefaults
, औरListItemColors
एपीआई को एक्सपेरिमेंट के तौर पर उपलब्ध नहीं कराया गया है (I7e7fa, b/261438882)SliderPositions
,SliderDefaults.Thumb
, औरSliderDefaults.Track
को स्टेबल वर्शन में प्रमोट करना. साथ ही, एक्सपेरिमेंट के तौर पर उपलब्ध नहीं कराए गएSlider
औरRangeSlider
एपीआई जोड़ना. इनमें कस्टम थंब और ट्रैक शामिल हैं. साथ ही, पिछलेSlider
औरRangeSlider
एपीआई को भी बंद किया जा रहा है. (Ie5ea6, b/261566890)Modifier.tooltipAnchor()
को सार्वजनिक किया गया है, ताकि डेवलपर इसे ऐंकर को पास कर सकें. इससे यह पता चलता है कि दबाकर रखने पर टूलटिप दिखनी चाहिए.PlainTooltipBox
एपीआई को अपडेट किया गया है, ताकिTooltipState
को अब शून्य नहीं किया जा सके. साथ ही, अब इसमें डिफ़ॉल्ट वैल्यू है. (Ie2fb7)ProgressIndicatorDefaults.circularTrackColor
को एक जैसा कॉन्टेंट होने की वजह से@Composable
के तौर पर मार्क किया गया है. (Id29cc)- वापस लाई गई प्रॉपर्टी गेटर
LocalMinimuTouchTargetEnforcement
को काम न करने वाली सुविधा के तौर पर मार्क करें और इसेLocalMinimumInteractiveComponentEnforcement
पर रीडायरेक्ट करें. (I60dd5)
वर्शन 1.1.0-alpha05
26 जनवरी, 2023
androidx.compose.material3:material3:1.1.0-alpha05
और androidx.compose.material3:material3-window-size-class:1.1.0-alpha05
रिलीज़ हो गए हैं. वर्शन 1.1.0-alpha05 में ये कमिट शामिल हैं.
नई सुविधाएं
DatePickerDialog
और सुलभता से जुड़ी सहायताRangeSlider
में कस्टम थंब और ट्रैक जोड़ा गया.
डिपेंडेंसी से जुड़े अपडेट
Compose UI
औरCompose Material
अब Lifecycle 2.6.0 पर निर्भर हैं.
वर्शन 1.1.0-alpha04
11 जनवरी, 2023
androidx.compose.material3:material3:1.1.0-alpha04
और androidx.compose.material3:material3-window-size-class:1.1.0-alpha04
रिलीज़ हो गए हैं. वर्शन 1.1.0-alpha04 में ये कमिट शामिल हैं.
नई सुविधाएं
- कैलेंडर यूज़र इंटरफ़ेस (यूआई) के ज़रिए कोई तारीख चुनने के लिए, शुरुआती
DatePicker
API. इस एपीआई में अब भी बदलाव किए जा रहे हैं. (I722b9) PlainTooltipBox
के ज़रिए, सामान्य टूलटिप के लिए सहायता जोड़ी गई. (I0cdfb)- खोज बार (Iad128)
SwipeToDismiss
(I458a8, b/242889540)
एपीआई में हुए बदलाव
- इसे Surfaces पर
IsContainer
सिमैंटिक्स प्रॉपर्टी में जोड़ा गया है. इस प्रॉपर्टी का इस्तेमाल बाद में किए जाने वाले बदलाव में किया जाएगा. इससे, एलिमेंट के सिमैंटिक मतलब के आधार पर ट्रैवर्सल का क्रम तय किया जा सकेगा. जैसे, सर्फ़ेस. (I63379) - नेविगेशन पैनल से जुड़े एपीआई को स्टेबल के तौर पर मार्क करें. (Iab01e, b/261439597)
- सर्कुलर प्रोग्रेस इंडिकेटर के लिए, ट्रैक कलर पैरामीटर जोड़ा गया. साथ ही, सर्कुलर और लीनियर प्रोग्रेस इंडिकेटर, दोनों के लिए स्ट्रोक कैप पैरामीटर जोड़ा गया. (Ie668c, b/216325962, b/222964817)
- बंद किए गए-छिपाए गए फ़ंक्शन के ज़्यादातर रिटर्न टाइप में null वैल्यू हो सकती है (Ibf7b0)
Modifier.minimumInteractiveComponentSize
जोड़ें. अगर एलिमेंट का साइज़ छोटा है, तो टच इंटरैक्शन को अलग-अलग करने के लिए, कम से कम 48dp साइज़ का इस्तेमाल किया जा सकता है. (I33f58, b/258495559)- कॉन्टेंट स्लॉट वाले
AlertDialog
कंपोज़ेबल के लिए, एक्सपेरिमेंटल एपीआई जोड़ा गया. (Iec4a2)
गड़बड़ियां ठीक की गईं
- प्रोग्रेस इंडिकेटर की प्रोग्रेस को अब उसकी अनुमानित सीमा के हिसाब से सही तरीके से तय किया जाता है. (I8a7eb, b/262262727)
आम समस्या
androidx.compose.foundation:1.4.0-alpha03
सेandroidx.compose.foundation:1.4.0-alpha04
पर अपडेट करते समय, आपकोjava.lang.NoSuchFieldError
गड़बड़ी दिख सकती है. समस्या की शिकायत यहां की गई थी. समस्या को ठीक करने के लिए, एक समाधान सबमिट किया गया है. यह Compose के अगले अपडेट में उपलब्ध होगा. इस समस्या को हल करने के लिए,androidx.compose.material
औरandroidx.compose.material3
लाइब्रेरी को नए वर्शन(1.1.0-alpha04) पर अपडेट करें याandroidx.compose.foundation
को 1.4.0-alpha03 पर डाउनग्रेड करें.
वर्शन 1.1.0-alpha03
7 दिसंबर, 2022
androidx.compose.material3:material3:1.1.0-alpha03
और androidx.compose.material3:material3-window-size-class:1.1.0-alpha03
रिलीज़ हो गए हैं. वर्शन 1.1.0-alpha03 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
consumedWindowInsets()
का नाम बदलकरconsumeWindowInsets()
औरwithConsumedWindowInsets()
का नाम बदलकरonConsumedWindowInsetsChanged()
कर दिया गया है. साथ ही, मॉडिफ़ायर को सार्वजनिक कर दिया गया है. (Ie44e1)- आइकॉन वाले टेक्स्ट बटन के लिए, इस्तेमाल करने के लिए नया डिफ़ॉल्ट कॉन्टेंट पैडिंग जोड़ें. (I8f662)
- नेविगेशन बार और रेल के लिए, बंद किए गए रंगों को जोड़ा गया. (Ia7892, b/258867034)
- स्क्रोल करने की जानकारी के लिए, Modifier API जोड़ा गया. (I2ba9d, b/203141462)
- इस कुकी का इस्तेमाल
Clickable
में किया जाता है. इससे प्रेस इंटरैक्शन को सही तरीके से डिले किया जा सकता है. ऐसा तब किया जाता है, जब जेस्चर स्क्रोल इवेंट बन सकते हैं. Clickables
के अंदर इस्तेमाल किए जाने पर,Clickables
के रिपल इफ़ेक्ट को सही तरीके से डिले न करने की समस्या ठीक की गई.Scrollable ViewGroup
- ड्रॉवर और शीट को अपडेट किया गया है, ताकि अगर जेस्चर स्क्रोल इवेंट बन सकते हैं, तो प्रेस में सही तरीके से देरी हो.
डिपेंडेंसी से जुड़े अपडेट
Compose UI
औरCompose Material
अब Lifecycle 2.5.1 पर निर्भर हैं. (I05ab0, b/258038814)
वर्शन 1.1.0-alpha02
9 नवंबर, 2022
androidx.compose.material3:material3:1.1.0-alpha02
और androidx.compose.material3:material3-window-size-class:1.1.0-alpha02
रिलीज़ हो गए हैं. वर्शन 1.1.0-alpha02 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
awaitFirstDown
औरwaitForUpOrCancellation
अब ज़्यादा फ़्लेक्सिबिलिटी के लिएPointerEventPass
स्वीकार करते हैं. इससेExposedDropdownMenuBox
में स्क्रोल करते समय मेन्यू दिखने की समस्या भी ठीक हो जाती है.(I7579a, b/212091796)- मटेरियल और मटेरियल3 टेक्स्ट,
TextField
, औरOutlinedTextField
मेंminLines
पैरामीटर जोड़ा गया है. इससे लाइनों की संख्या (I4af1d) के हिसाब से कॉम्पोनेंट की कम से कम ऊंचाई सेट की जा सकती है TopAppBarDefaults smallTopAppBarColors
फ़ंक्शन को बंद कर दिया गया है. इसके बजाय, नएtopAppBarColors
फ़ंक्शन का इस्तेमाल करें. इसका इस्तेमालTopAppBar
बनाते समय किया जाना चाहिए. (Ie6cb9)BasicText
औरBasicTextField
मेंminLines
पैरामीटर जोड़ा गया. इससे लाइनों की संख्या (I24294, b/122476634) के हिसाब से, इन कंपोज़ेबल की कम से कम ऊंचाई सेट की जा सकती है
गड़बड़ियां ठीक की गईं
- Material3
IconButton
औरIconToggleBotton
के कॉन्टेंट को कॉम्पोनेंट की स्टेट-लेयर शेप (जैसे, गोलाकार शेप) में काटें. (I9da8f) - यह Material3 के मीडियम और लार्ज टॉप ऐप्लिकेशन बार को अपडेट करता है, ताकि उनके पूरे सर्फ़ेस पर एक ही बैकग्राउंड का रंग लागू किया जा सके. साथ ही, डिफ़ॉल्ट रंगों को पारदर्शी रंग की वैल्यू के साथ बदलने की अनुमति दी जा सके. (I67659, b/249688556, b/250838918)
वर्शन 1.1.0-alpha01
24 अक्टूबर, 2022
androidx.compose.material3:material3:1.1.0-alpha01
और androidx.compose.material3:material3-window-size-class:1.1.0-alpha01
रिलीज़ हो गए हैं. वर्शन 1.1.0-alpha01 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- टाइटल पर TextStyle और Brush लागू होने पर, टॉप ऐप्लिकेशन बार से जुड़ी समस्याओं को ठीक किया गया है. (If667e)
वर्शन 1.0
वर्शन 1.0.1
9 नवंबर, 2022
androidx.compose.material3:material3:1.0.1
और androidx.compose.material3:material3-window-size-class:1.0.1
रिलीज़ हो गए हैं. वर्शन 1.0.1 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- यह Material3 के मीडियम और लार्ज टॉप ऐप्लिकेशन बार को अपडेट करता है, ताकि उनके पूरे सर्फ़ेस पर एक ही बैकग्राउंड का रंग लागू किया जा सके. साथ ही, डिफ़ॉल्ट रंगों को पारदर्शी रंग की वैल्यू के साथ बदलने की अनुमति दी जा सके. (I67659, b/249688556, b/250838918)
वर्शन 1.0.0
24 अक्टूबर, 2022
androidx.compose.material3:material3:1.0.0
और androidx.compose.material3:material3-window-size-class:1.0.0
रिलीज़ हो गए हैं. वर्शन 1.0.0 में ये कमिट शामिल हैं.
1.0.0 वर्शन की मुख्य सुविधाएं
यह Compose Material 3 का पहला स्टेबल वर्शन है!
Material Design 3 की थीम और Material You का डाइनैमिक कलर
Material Design 3 कॉम्पोनेंट
- बैज
- बॉटम ऐप्लिकेशन बार
- बटन
- एफ़एबी और एक्सटेंडेड एफ़एबी
- कार्ड
- चेकबॉक्स
- चिप्स
- डायलॉग
- डिवाइडर
- ड्रॉपडाउन मेन्यू
- सूची
- नेविगेशन बार
- नेविगेशन पैनल
- नेविगेशन रेल
- प्रोग्रेस दिखाने वाला इंडिकेटर
- रेडियो बटन
- स्लाइडर
- बदलें
- टैब
- टेक्स्ट फ़ील्ड
- टॉप ऐप्लिकेशन बार
- आइकॉन
- टेक्स्ट
- सरफ़ेस
- लेआउट
- कॉन्टेंट का रंग
विंडो साइज़ क्लास
material3-window-size-class
एक नई लाइब्रेरी है. यह विंडो साइज़ क्लास के लिए सहायता उपलब्ध कराती है. यह आपके लिए, व्यूपोर्ट ब्रेकपॉइंट का एक सेट है. इसकी मदद से, ऐप्लिकेशन के लेआउट को डिज़ाइन, डेवलप, और टेस्ट किया जा सकता है.calculateWindowSizeClass
का इस्तेमाल करके, विंडो साइज़ क्लास इंस्टेंस को वापस पाया जा सकता है. इसका इस्तेमाल करके, यह तय किया जा सकता है कि आपका यूज़र इंटरफ़ेस (यूआई) कैसा दिखना चाहिए. जैसे, बड़ी विंडो के लिए बॉटम नेविगेशन के बजाय नेविगेशन रेल दिखाना. ज़्यादा जानकारी और इस्तेमाल का सैंपल देखने के लिए,WindowSizeClass
के लिए एपीआई का रेफ़रंस दस्तावेज़ देखें.ज़्यादा जानकारी के लिए, कृपया यह ब्लॉग पोस्ट देखें!
वर्शन 1.0.0-rc01
5 अक्टूबर, 2022
androidx.compose.material3:material3:1.0.0-rc01
और androidx.compose.material3:material3-window-size-class:1.0.0-rc01
रिलीज़ हो गए हैं. वर्शन 1.0.0-rc01 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- टेक्स्ट फ़ील्ड एपीआई (Iaac0d, b/227146125) में टेक्स्ट जोड़ने के लिए, स्लॉट पैरामीटर जोड़ा गया
वर्शन 1.0.0-beta03
21 सितंबर, 2022
androidx.compose.material3:material3:1.0.0-beta03
और androidx.compose.material3:material3-window-size-class:1.0.0-beta03
रिलीज़ हो गए हैं. वर्शन 1.0.0-beta03 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
ExposedDropdownMenuDefaults
अब मेन्यू आइटम के लिए पैडिंग वैल्यू दिखाता है. (I34ee1)ExposedDropdownMenuBoxScope
में अबModifier.menuAnchor()
मॉडिफ़ायर है. इसे टेक्स्ट फ़ील्ड में पास किया जाना चाहिए, ताकि a11y की सुविधा सही तरीके से काम कर सके. (I27fa3)- मौजूदा Slider API के लिए दो ओवरलोड किए गए तरीके जोड़े गए हैं, ताकि उपयोगकर्ता स्लाइडर को पॉप्युलेट करने के लिए थंब या ट्रैक पास कर सकें. (I21c00)
गड़बड़ियां ठीक की गईं
- गहरे रंग वाली थीम के लिए, 'गड़बड़ी होने पर दिखने वाला कंटेनर' के रंग को टोन 90 (Ic5612) पर मैप किया गया
- इस समस्या को ठीक किया गया है. इससे छोटे साइज़ के Material 3 टॉप ऐप्लिकेशन बार के लिए, पारदर्शी बैकग्राउंड सेट किया जा सकेगा. (I645e2, b/245575782)
वर्शन 1.0.0-beta02
7 सितंबर, 2022
androidx.compose.material3:material3:1.0.0-beta02
और androidx.compose.material3:material3-window-size-class:1.0.0-beta02
रिलीज़ हो गए हैं. वर्शन 1.0.0-beta02 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- m3 कॉम्पोनेंट के beta01 वर्शन में, डिफ़ॉल्ट कॉम्पोनेंट इनसेट में अब IME इनसेट शामिल नहीं होते.
- Material3 Scaffold कॉम्पोनेंट में अब
contentWindowInsets
पैरामीटर है. इससे, कॉन्टेंट स्लॉट के लिए इनसेट की संख्या तय की जा सकती है. (Icf11a, b/243713323) - यह एक्सपेरिमेंट के तौर पर उपलब्ध Material 3
SmallTopAppBar
फ़ंक्शन को बंद कर देता है और इसके बदले में एक जैसाTopAppBar
फ़ंक्शन उपलब्ध कराता है. कृपया अपने इस्तेमाल को नए वर्शन पर माइग्रेट करें. (I74404, b/226918634) - इससे टॉप ऐप्लिकेशन बार को फ़्लिंग और स्नैप करने के तरीके को कंट्रोल किया जा सकता है. (I15c81)
- यह विकल्प, Divider से startIndent को हटाता है और रंग को आखिरी पैरामीटर पर ले जाता है. (If7be2)
गड़बड़ियां ठीक की गईं
- डायलॉग बॉक्स को TalkBack का इस्तेमाल करने वाले लोगों के लिए, अपनी पहचान बतानी चाहिए. इसके लिए, जब डायलॉग बॉक्स दिखे, तब 'डायलॉग' शब्द का एलान करें. (I857ef)
वर्शन 1.0.0-beta01
24 अगस्त, 2022
androidx.compose.material3:material3:1.0.0-beta01
और androidx.compose.material3:material3-window-size-class:1.0.0-beta01
रिलीज़ हो गए हैं. वर्शन 1.0.0-beta01 में ये कमिट शामिल हैं.
एपीआई का रेफ़रंस
नई थीम, कॉम्पोनेंट, और अन्य कंपोज़ेबल देखने के लिए, Compose Material 3 API के रेफ़रंस की खास जानकारी देखें.
एपीआई में हुए बदलाव
- Material 3 टॉप ऐप्लिकेशन बार को अपडेट किया गया है. अब यह पूरी तरह से छोटा होने से लेकर पूरी तरह से बड़ा होने तक की स्थिति में स्नैप हो जाता है. इसके अलावा,
TopAppBarDefaults
के व्यवहार से जुड़े फ़ंक्शन को कंपोज़ेबल बनाया गया है. साथ ही, उनके टॉप ऐप्लिकेशन बार की स्थिति और ऐनिमेशन स्पेसिफ़िकेशन के लिए डिफ़ॉल्ट वैल्यू दी गई हैं. (I642b3) - FAB कॉम्पोनेंट के सिग्नेचर अपडेट किए गए, ताकि वे Surface API (I3afaa) से मेल खा सकें
- टॉप ऐप्लिकेशन बार, ड्रॉअर, नेविगेशन बार, और रेल के लिए, बिल्ट-इन इनसेट की सुविधा जोड़ी गई है. इन कॉम्पोनेंट का इस्तेमाल अलग-अलग या Scaffold के साथ करने पर, डेवलपर के लिए इनसेट अपने-आप मैनेज हो जाएंगे. ध्यान दें: इस बदलाव से, स्टेटस बार के आइकॉन और स्टेटस और नेविगेशन बार की पारदर्शिता को अपने-आप मैनेज करने की सुविधा नहीं मिलती है. कृपया इसे मैन्युअल तरीके से जारी रखें, ताकि आपको एज-टू-एज डिसप्ले का बेहतरीन अनुभव मिल सके. (I7e4e6, b/183161866)
- अपडेट किए गए कॉम्पोनेंट में डिफ़ॉल्ट वैल्यू को कम किया गया है. इससे आने वाले समय में, एपीआई को ज़्यादा आसानी से इस्तेमाल किया जा सकेगा और उसकी परफ़ॉर्मेंस भी बेहतर होगी. (I31820)
- एपीआई में एक जैसा अनुभव बनाए रखने के लिए, चिप और नेविगेशन ड्रॉअर शीट के पैरामीटर का क्रम बदला गया (I45d0b)
- डिवाइडर से
startIndent
को हटा दिया गया है और रंग को आखिरी पैरामीटर के तौर पर जोड़ दिया गया है.(If7be2)
वर्शन 1.0.0-alpha16
10 अगस्त, 2022
androidx.compose.material3:material3:1.0.0-alpha16
और androidx.compose.material3:material3-window-size-class:1.0.0-alpha16
रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha16 में ये कमिट शामिल हैं.
नई सुविधाएं
- नेविगेशन पैनल की चौड़ाई को पसंद के मुताबिक सेट करने की सुविधा जोड़ी गई है. (Ia7f10)
एपीआई में हुए बदलाव
- एपीआई (Ie2637) में एक जैसा डेटा बनाए रखने के लिए, टैब और लीडिंग आइकॉन टैब के पैरामीटर का क्रम बदलें
BadgeDefaults
को एक्सपेरिमेंट के तौर पर मार्क किया गया. (I98ef3)- नेविगेशन पैनल के पुराने फ़ंक्शन को हटाया गया. (I4f2db)
- एपीआई में एक जैसा अनुभव बनाए रखने के लिए, Material 3 में स्लाइडर पैरामीटर का क्रम बदलें (I0aee7)
- एपीआई (I51cda) में एक जैसा डेटा बनाए रखने के लिए,
NavigationBar
औरNavigationRail
पैरामीटर का क्रम बदलें - एपीआई में एक जैसा अनुभव बनाए रखने के लिए, Material 3 में पैरामीटर का क्रम बदलें. (If4ae1)
- एपीआई में एक जैसा अनुभव बनाए रखने के लिए, Material 3 में स्लाइडर पैरामीटर का क्रम बदलें (I62673)
- टॉप ऐप्लिकेशन बार (Id75be) के साथ एक जैसा रखने के लिए, आइकॉन पैरामीटर का नाम बदलकर कार्रवाइयां कर दिया गया है
Badge
औरBadgedBox
को एक्सपेरिमेंटल के तौर पर मार्क करें, क्योंकि ऐंकर अलाइनमेंट में अब भी बदलाव हो रहे हैं. (I1712e, b/236524516)- आइकॉन बटन के वैरिएंट पर मौजूद
@ExperimentalMaterial3Api
एनोटेशन को@OptIn
(I070b5) में बदलें - नेविगेशन ड्रॉअर के कॉन्टेंट को उसके कंपोज़ेबल से अलग किया गया है, ताकि उस पर कस्टम चौड़ाई तय की जा सके. (Ia7f10)
MenuDefaults
औरTabDefaults
सेDivider
को हटाता है (I4e33c)
वर्शन 1.0.0-alpha15
27 जुलाई, 2022
androidx.compose.material3:material3:1.0.0-alpha15
और androidx.compose.material3:material3-window-size-class:1.0.0-alpha15
रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha15 में ये कमिट शामिल हैं.
नई सुविधाएं
- इस विकल्प को चुनने पर, ऐप्लिकेशन बार को बार से ही खींचकर ले जाने की अनुमति मिलती है. (I65c00, b/205873416)
एपीआई में हुए बदलाव
FilterChip
औरElevatedFilterChip
एपीआई में अपडेट किए गए हैं, ताकिselectedIcon
स्लॉट को हटाया जा सके. साथ ही, चुने गए राज्य को दिखाने के लिएleadingIcon
को फिर से इस्तेमाल करने को बढ़ावा दिया जा सके. (Ie5dc2)- स्क्रिम और आउटलाइन वैरिएंट के कलर रोल जोड़ें. (Id6d54)
- कंपोज़ेबल डिफ़ॉल्ट के लिए नाम रखने के नियमों को ठीक करें. (I62b27)
ListItemDefaults
औरListItemColors
को एक्सपेरिमेंट के तौर पर मार्क करें. (I1f3ec)- टॉप ऐप्लिकेशन बार एपीआई में बदलाव किए गए हैं, ताकि इसकी स्थिति की प्रॉपर्टी का मतलब बेहतर तरीके से पता चल सके. साथ ही, टॉप ऐप्लिकेशन बार एपीआई को एक्सपेरिमेंट के तौर पर मार्क करें. (Ic0ad8)
- टेक्स्ट चुनने के लिए इस्तेमाल किए जाने वाले रंगों को अब
TextFieldColors
में जोड़ दिया गया है, ताकि उन्हें आसानी से खोजा जा सके. (Iba1b8) - आइकॉन वाले बटन के साथ इस्तेमाल करने के लिए,
ButtonDefault.ButtonWithIconContentPadding
जोड़ना. (I2bf9c) - टेक्स्ट फ़ील्ड को एक्सपेरिमेंटल के तौर पर मार्क किया गया है, ताकि आने वाले समय में एपीआई में होने वाले बदलावों को आसानी से लागू किया जा सके. (I127b5)
Checkbox
फ़ंक्शन से@ExperimentalMaterial3Api
एनोटेशन हटा दिया गया है. (I5eefc)RadioButton
फ़ंक्शन से@ExperimentalMaterial3Api
एनोटेशन हटा दिया गया है. (I17e2a)- हमने नॉन-इंटरैक्टिव कार्ड से
@ExperimentalMaterial3Api
एनोटेशन हटा दिया है. (I9bd49) - यह कुकी, अलग-अलग कॉम्पोनेंट के डिफ़ॉल्ट ऑब्जेक्ट को अपडेट करती है, ताकि उनमें रंग, आकार वगैरह शामिल किए जा सकें. (I96e11)
गड़बड़ियां ठीक की गईं
- कैटलॉग ऐप्लिकेशन में लोगों को भ्रम से बचाने के लिए, इनपुट चिप के सैंपल से काम न करने वाले ट्रेलिंग आइकॉन हटा दिए गए हैं. (I9846a)
वर्शन 1.0.0-alpha14
29 जून, 2022
androidx.compose.material3:material3:1.0.0-alpha14
और androidx.compose.material3:material3-window-size-class:1.0.0-alpha14
रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha14 में ये कमिट शामिल हैं.
नई सुविधाएं
- M3 सूची लागू करने की सुविधा जोड़ी गई. इसके इस्तेमाल का तरीका जानने के लिए, दस्तावेज़ देखें (Id7a20)
एपीआई में हुए बदलाव
RangeSlider
(I3b79a) में पैरामीटर का नाम values से बदलकर value करें- मटीरियल डिज़ाइन स्पेसिफ़िकेशन के मुताबिक, हर आइटम के लिए चुनने की स्थिति को सपोर्ट करने के लिए,
InputChip
के एपीआई में बदलाव किए गए हैं. चुने गए आइटम के लिए, बंद की गई स्थिति केFilterChip
रंगों के लिए अतिरिक्त सहायता. (I55244, b/235792432) BottomAppBar
डिफ़ॉल्ट FAB (Ida4c8) जोड़ा गयाColorScheme.surfaceColorAtElevation
जोड़ा गया (Id41af)- Compose लाइब्रेरी में इंटरफ़ेस अब jdk8 के डिफ़ॉल्ट इंटरफ़ेस के तरीकों (I5bcf1) का इस्तेमाल करके बनाए जाते हैं
WindowWidthSizeClass
औरWindowHeightSizeClass
अब Comparable को लागू करते हैं, इसलिए इनकी तुलना ऑपरेटर (<, <=, >=, >) और अन्य एपीआई का इस्तेमाल करके की जा सकती है. (I747d0)
गड़बड़ियां ठीक की गईं
- बैज के सैंपल को अपडेट करें, ताकि कॉन्टेंट के ब्यौरे के बारे में ज़्यादा काम की जानकारी दी जा सके. (I10b9d)
- इस विकल्प को जोड़ने से, Material 3 कैटलॉग के थीम पिकर में सिस्टम के फ़ॉन्ट साइज़ का इस्तेमाल किया जा सकेगा. (I10605)
- बैज और अनिश्चित प्रोग्रेस इंडिकेटर के लिए सैंपल कोड जोड़ा गया. (I8fbe0)
वर्शन 1.0.0-alpha13
1 जून, 2022
androidx.compose.material3:material3:1.0.0-alpha13
और androidx.compose.material3:material3-window-size-class:1.0.0-alpha13
रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha13 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- कॉन्फ़िगरेशन में बदलाव होने पर, टॉप ऐप्लिकेशन बार की पोज़िशन को बनाए रखने में मदद करता है. (I10459, b/216160958)
वर्शन 1.0.0-alpha12
18 मई, 2022
androidx.compose.material3:material3:1.0.0-alpha12
और androidx.compose.material3:material3-window-size-class:1.0.0-alpha12
रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha12 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- स्लाइडर पैरंट की चौड़ाई अब 0 हो सकती है. (b/231707291)
वर्शन 1.0.0-alpha11
11 मई, 2022
androidx.compose.material3:material3:1.0.0-alpha11
और androidx.compose.material3:material3-window-size-class:1.0.0-alpha11
रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha11 में ये कमिट शामिल हैं.
नई सुविधाएं
RangeSlider
को Material 3 (I18e38) में जोड़ा गया- Material3
AssistChip
औरInputChip
के साथ काम करने की सुविधा जोड़ी गई (I0d25a) - Material3
FilterChip
औरSuggestionChip
के लिए सहायता जोड़ी गई (I9fdf3)
एपीआई में हुए बदलाव
TextFieldDefaults.BorderStroke
कंपोज़ेबल का नाम बदलकरTextFieldDefaults.BorderBox
कर दिया गया है. यह कंपोज़ेबल,OutlinedTextField
में बॉर्डर स्ट्रोक बनाता है. (I5f295)- m3 के विज़ुअल में बदलाव करने की सुविधा चालू/बंद करें (Iab30e)
- स्टैंडर्ड आइकॉन बटन में रंग पास करने की अनुमति दें. (Ia2445)
गड़बड़ियां ठीक की गईं
- यह पक्का करने के लिए कि इनर पैडिंग का इस्तेमाल किया गया है, material3/Scaffold में लिंट चेक जोड़ें (I72293, b/226951418)
वर्शन 1.0.0-alpha10
20 अप्रैल, 2022
androidx.compose.material3:material3:1.0.0-alpha10
और androidx.compose.material3:material3-window-size-class:1.0.0-alpha10
रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha10 में ये कमिट शामिल हैं.
नई सुविधाएं
material3-window-size-class
एक नई लाइब्रेरी है. यह विंडो साइज़ क्लास के लिए सहायता उपलब्ध कराती है. यह आपके लिए, व्यूपोर्ट ब्रेकपॉइंट का एक सेट है. इसकी मदद से, ऐप्लिकेशन के लेआउट को डिज़ाइन, डेवलप, और टेस्ट किया जा सकता है.calculateWindowSizeClass
का इस्तेमाल करके, विंडो साइज़ क्लास इंस्टेंस को वापस पाया जा सकता है. इसका इस्तेमाल करके, यह तय किया जा सकता है कि आपका यूज़र इंटरफ़ेस (यूआई) कैसा दिखना चाहिए. जैसे, बड़ी विंडो के लिए बॉटम नेविगेशन के बजाय नेविगेशन रेल दिखाना. ज़्यादा जानकारी और इस्तेमाल का सैंपल देखने के लिए,WindowSizeClass
के लिए एपीआई का रेफ़रंस दस्तावेज़ देखें. विंडो के साइज़ क्लास की परिभाषाओं के बारे में ज़्यादा जानने के लिए, अलग-अलग स्क्रीन साइज़ के लिए सहायता से जुड़े सार्वजनिक दिशा-निर्देश देखें.
एपीआई में हुए बदलाव
- इससे
BottomAppBar
के लिए डिफ़ॉल्ट एफ़एबी एलिवेशन जुड़ जाता है. साथ ही, एफ़एबी के साथBottomAppBar
से ट्रेलिंग लैम्ब्डा हट जाता है. (I92c47) - Material3
FilledIconButton
,FilledTonalIconButton
, औरOutlinedIconButton
को जोड़ता है. (Ib2bda) - Material 3 Snackbar API को अपडेट किया गया है, ताकि वह वैकल्पिक कार्रवाई और खारिज करने की कार्रवाई के लिए रंग की वैल्यू स्वीकार कर सके. (Ibe4b4)
PointerInputChange
में, आंशिक खपत (नीचे या स्थिति) को बंद कर दिया गया है. बदलाव को पूरी तरह से लागू करने के लिए,consume()
का इस्तेमाल किया जा सकता है.isConsumed
का इस्तेमाल करके यह पता लगाया जा सकता है कि क्या किसी और ने पहले ही बदलाव कर लिया है.PointerInputChange::copy()
अब हमेशा शैलो कॉपी बनाता है. इसका मतलब है किPointerInputChange
की कॉपी का इस्तेमाल तब किया जाएगा, जब किसी एक कॉपी का इस्तेमाल हो जाएगा. अगर आपको अनबाउंडPointerInputChange
बनाना है, तो कंस्ट्रक्टर का इस्तेमाल करें. (Ie6be4, b/225669674)- Cards API में बदलाव किए गए हैं, ताकि
CardColors
इंटरफ़ेस के ज़रिए कंटेनर और कॉन्टेंट के रंग मिल सकें. साथ ही, क्लिक किए जा सकने वाले कार्ड के लिए, बंद की गई स्थिति को सपोर्ट किया जा सके. (I927df) - अन्य कॉम्पोनेंट के साथ बेहतर तरीके से काम करने के लिए, Material 3 के टेक्स्ट फ़ील्ड में पैरामीटर
backgroundColor
का नाम बदलकरcontainerColor
कर दिया गया है. (I6fbd9)
गड़बड़ियां ठीक की गईं
- स्टैंडर्ड
IconButton
को Material3 स्पेसिफ़िकेशन के मुताबिक बनाने के लिए अपडेट किया गया है. (I09eab) - material3 Scaffold के टॉप बार की ऊंचाई को कॉन्टेंट में पास की गई पैडिंग में ले जाएं, ताकि कॉन्टेंट को टॉप ऐप्लिकेशन बार के नीचे रेंडर किया जा सके. अगर
PaddingValues
को अनदेखा किया जाता है, तो हो सकता है कि कॉन्टेंट, टॉप बार की वजह से न दिखे. (I83cbc, b/217776202)
वर्शन 1.0.0-alpha09
6 अप्रैल, 2022
androidx.compose.material3:material3:1.0.0-alpha09
रिलीज़ हो गया है. वर्शन 1.0.0-alpha09 में ये कमिट शामिल हैं.
नई सुविधाएं
- Material 3 Switch API (I2c3ad) जोड़ा गया
एपीआई में हुए बदलाव
- टेक्स्ट फ़ील्ड वाले ड्रॉपडाउन मेन्यू (इन्हें 'एक्सपोज़ किए गए ड्रॉपडाउन मेन्यू' या 'कॉम्बो बॉक्स' भी कहा जाता है) के लिए सहायता जोड़ी गई. (I1b832)
- MaterialTheme और Shape सब सिस्टम में शेप पैरामीटर जोड़ा गया. (I37426)
ExtendedFloatingActionButton
में एक नया पैरामीटर जोड़ा गया है. इससे यह कंट्रोल किया जा सकेगा कि FAB को बड़ा किया गया है या छोटा. साथ ही, हर स्थिति के बीच ऐनिमेशन भी जोड़े गए हैं. बिना आइकॉन वाले ExtendedFAB के लिए, ट्रेलिंग टेक्स्ट वाले ExtendedFAB के लिए Extended FAB ओवरलोड जोड़ा गया. (Iba7f1)
वर्शन 1.0.0-alpha08
23 मार्च, 2022
androidx.compose.material3:material3:1.0.0-alpha08
रिलीज़ हो गया है. वर्शन 1.0.0-alpha08 में ये कमिट शामिल हैं.
नई सुविधाएं
- Material 3 टेक्स्ट फ़ील्ड के लिए सपोर्ट जोड़ा गया. (I795cc, b/199377790)
एपीआई में हुए बदलाव
- मेन्यू के लिए डिफ़ॉल्ट डिवाइडर जोड़ें (I01374)
ColorScheme
क्लास मेंsurfaceTint
रंग पैरामीटर जोड़ा गया. (I2f558)
गड़बड़ियां ठीक की गईं
- Material3 बटन को ठीक करें, ताकि MaterialTheme से इसकी डिफ़ॉल्ट टेक्स्ट स्टाइल वैल्यू पढ़ी जा सके. (Ie62fc)
वर्शन 1.0.0-alpha07
9 मार्च, 2022
androidx.compose.material3:material3:1.0.0-alpha07
रिलीज़ हो गया है. वर्शन 1.0.0-alpha07 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- Material 3 Surface API में अपडेट किए गए हैं. इससे क्लिक किए जा सकने वाले Surface के लिए, ओवरलोड किए गए फ़ंक्शन वापस आ जाते हैं. साथ ही, चुने जा सकने वाले और टॉगल किए जा सकने वाले Surface के लिए, एक फ़ंक्शन जोड़ा गया है. (I4bf18)
LazyVerticalGrid
औरLazyHorizontalGrid
अब स्थिर हो गए हैं. (I307c0)LazyVerticalGrid/LazyHorizontalGrid
और इससे जुड़ी सभी एपीआई को .grid सबपैकेज में ले जाया गया है. कृपया androidx.compose.foundation.lazy से androidx.compose.foundation.lazy.grid में अपने इंपोर्ट अपडेट करें. (I2d446)WindowInsetsControllerCompat
के लिए, सिर्फ़ व्यू पर भरोसा करने वाले पिछले बदलाव को वापस लाया गया है. साथ ही, अब फिर से विंडो की ज़रूरत है. कुछ विंडो फ़्लैग मैनेज करने के लिए, विंडो ज़रूरी है.ViewCompat.getWindowInsetsController
कोWindowCompat.getInsetsController
के पक्ष में बंद कर दिया गया है, ताकि यह पक्का किया जा सके कि सही विंडो का इस्तेमाल किया गया हो. जैसे, अगर व्यू किसी डायलॉग में है. (I660ae, b/219572936)- क्रॉस ऐक्सिस के साइज़ तय करने के लिए, नया
LazyVerticalGrid
एपीआई जोड़ा गया (I17723)
गड़बड़ियां ठीक की गईं
- Surface API (I3c8b9) में हुए बदलावों के मुताबिक Card API में अपडेट
वर्शन 1.0.0-alpha06
23 फ़रवरी, 2022
androidx.compose.material3:material3:1.0.0-alpha06
रिलीज़ हो गया है. वर्शन 1.0.0-alpha06 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
NavigationDrawerItem
को जोड़ा जाता है. यह ड्रॉअर (Ic396f, b/218286829) में मौजूद किसी एक डेस्टिनेशन को दिखाता हैPermanentNavigationDrawer
औरDismissibleNavigationDrawer
को एक्सपेरिमेंटल एपीआई के तौर पर जोड़ा गया है. ये ड्रॉअर, बड़ी स्क्रीन वाले डिवाइसों के लिए बेहतर होते हैं. (I5f8ab, b/218286829)- Material 3 वाले बॉटम ऐप्लिकेशन बार के लिए सहायता जोड़ी गई (Ic432a)
NavigationDrawer
का नाम बदलकरModalNavigationDrawer
कर दिया गया है (I1807d, b/218286829)- Material 3 Slider क्लास और टोकन (I1ccee) जोड़े गए
- टैब लागू करने की सुविधा जोड़ी गई. इस्तेमाल के उदाहरण (Ie0146) के लिए, दस्तावेज़ देखें
गड़बड़ियां ठीक की गईं
- उस समस्या को ठीक किया गया है जिसमें
TalkBack
स्क्रीन रीडर के लीनियर नेविगेशन ने, ऐप्लिकेशन के सबसे ऊपर मौजूद बार के खाली टाइटल को चुना था. (Id4690) IconSize
कोFloatingActionButtonDefaults
में जोड़ा गया. (Ia71cf)AlertDialog
के साथ लंबा टेक्स्ट जोड़ने पर,AlertDialog
बटन छिप जाते थे. इस समस्या को ठीक किया गया है.LazyColumn
(Ib2cc9, b/216663029)
वर्शन 1.0.0-alpha05
9 फ़रवरी, 2022
androidx.compose.material3:material3:1.0.0-alpha05
रिलीज़ हो गया है. वर्शन 1.0.0-alpha05 में ये कमिट शामिल हैं.
नई सुविधाएं
Material Design 3 कॉम्पोनेंट जोड़े गए
- ड्रॉपडाउन मेन्यू
- कार्ड
एपीआई में हुए बदलाव
Surface
फ़ंक्शन अब काम नहीं करता. यह onClick कॉलबैक लेता है. क्लिक किए जा सकने वाले ऐसेट,InteractionSource
औरModifier.clickable()
की मदद से बनाई जानी चाहिए. (I211c6)- FAB के लिए, दबाए गए और फ़ोकस किए गए एलिवेशन की सुविधा जोड़ी गई. (Ibb584)
Surface
API में बदलाव किया गया है, ताकि InteractionSource मिल सके. इससे अलग-अलग स्थितियों में इसकी उपस्थिति को कंट्रोल किया जा सकता है. (Iafbc8)
गड़बड़ियां ठीक की गईं
- डाइनैमिक कलर स्कीम में, तीसरे रंग जोड़े गए (I456c4, b/214588434)
वर्शन 1.0.0-alpha04
26 जनवरी, 2022
androidx.compose.material3:material3:1.0.0-alpha04
रिलीज़ हो गया है. वर्शन 1.0.0-alpha04 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- उन तरीकों में
NonRestartableComposable
जोड़ा गया है जो कॉम्प्लेक्स लॉजिक के बिना मौजूदा तरीकों के ओवरलोड हैं. इससे, कंपाइलर के जनरेट किए गए मेमोइज़ेशन चेक (equals) कम हो जाते हैं. ये चेक, उन सभी पैरामीटर के लिए होते हैं जो कॉल किए गए इनर फ़ंक्शन में दोहराए जाते हैं. (I90490) - Material 3 का डिवाइडर जोड़ा गया. (Ica5fc)
- एक्सपेरिमेंट के तौर पर उपलब्ध एपीआई एनोटेशन का इस्तेमाल करके, Checkbox और RadioButton को मार्क करें. (Ie44bb)
- Material 3 के प्रोग्रेस इंडिकेटर के लिए सहायता जोड़ी गई. (Iff232, b/205023841)
गड़बड़ियां ठीक की गईं
- बंद किए गए
TextButton's
कंटेनर के रंग को पारदर्शी (I6b248, b/213339737) के तौर पर अपडेट करें
वर्शन 1.0.0-alpha03
12 जनवरी, 2022
androidx.compose.material3:material3:1.0.0-alpha03
रिलीज़ हो गया है. वर्शन 1.0.0-alpha03 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
LocalIndication
को Material 3 केMaterialTheme
में जोड़ें. (I7ce4e)- चेकबॉक्स के लिए लागू किए गए कॉर्नर रेडियस को ठीक किया गया (I38b03, b/175198975, b/202309440)
डिपेंडेंसी से जुड़े अपडेट
- अब Kotlin
1.6.10
पर निर्भर करता है.
वर्शन 1.0.0-alpha02
1 दिसंबर, 2021
androidx.compose.material3:material3:1.0.0-alpha02
रिलीज़ हो गया है. वर्शन 1.0.0-alpha02 में ये कमिट शामिल हैं.
नई सुविधाएं
- चेकबॉक्स और रेडियोबटन के लिए सहायता जोड़ी गई.
- Kotlin
1.6.0
के साथ काम करने के लिए अपडेट किया गया
एपीआई में हुए बदलाव
- Material 3 के Scaffold से ड्रॉअर हटाएं. (I04f51)
- Material 3
Checkbox
के साथ काम करने की सुविधा जोड़ी गई है. (Id5542) - Material 3
RadioButton
के साथ काम करने की सुविधा जोड़ी गई है. (I20334)
गड़बड़ियां ठीक की गईं
IconButton
के रिपल रेडियस को 40dp से घटाकर 20dp करें. (I68bbe, b/206674345)Text
के लिए पोर्ट स्ट्रिंग फ़ास्ट पाथ,compose.material
(I30b03) से बदल गया है- हमेशा चालू रहने वाले बटन को हार्डकोड करने की समस्या ठीक की गई. (Iea832, b/205335456)
वर्शन 1.0.0-alpha01
27 अक्टूबर, 2021
androidx.compose.material3:material3:1.0.0-alpha01
रिलीज़ हो गया है. वर्शन 1.0.0-alpha01 में ये कमिट शामिल हैं.
नई सुविधाएं
Material Design 3 की थीम और Material You का डाइनैमिक कलर
Material Design 3 कॉम्पोनेंट
- बटन
- एफ़एबी और एक्सटेंडेड एफ़एबी
- डायलॉग
- नेविगेशन बार
- नेविगेशन पैनल
- नेविगेशन रेल
- टॉप ऐप्लिकेशन बार
- बैज
- आइकॉन
- टेक्स्ट
- सरफ़ेस
- लेआउट
- कॉन्टेंट का रंग
ज़्यादा जानकारी के लिए, Compose में Material Theming की गाइड में Material Design 3 और Material You सेक्शन देखें.