तीसरा कॉन्टेंट बनाना

मटीरियल डिज़ाइन के अगले वर्शन, Material Design 3 कॉम्पोनेंट की मदद से, Jetpack Compose यूज़र इंटरफ़ेस (यूआई) बनाएं. Material 3 में, अपडेट की गई थीम और कॉम्पोनेंट के साथ-साथ, Material You की डाइनैमिक कलर जैसी सुविधाएं शामिल हैं. इसे Android 12 के नए विज़ुअल स्टाइल और सिस्टम यूज़र इंटरफ़ेस (यूआई) के साथ काम करने के लिए डिज़ाइन किया गया है.
नया अपडेट रिलीज़ किया गया जांचा और परखा हुआ वर्शन रिलीज़ कैंडिडेट बीटा रिलीज़ ऐल्फ़ा रिलीज़
12 दिसंबर, 2024 1.3.1 - - 1.4.0-alpha05

संरचना

Compose, androidx में सात Maven ग्रुप आईडी का कॉम्बिनेशन है. हर ग्रुप में, सुविधाओं का एक टारगेट किया गया सबसेट होता है. साथ ही, हर ग्रुप के लिए रिलीज़ नोट का अपना सेट होता है.

इस टेबल में, रिलीज़ नोट के हर सेट के ग्रुप और लिंक के बारे में बताया गया है.

ग्रुपब्यौरा
compose.animationउपयोगकर्ता अनुभव को बेहतर बनाने के लिए, अपने Jetpack Compose ऐप्लिकेशन में ऐनिमेशन बनाएं.
compose.compiler@Composable फ़ंक्शन को बदलें और Kotlin कंपाइलर प्लग इन की मदद से ऑप्टिमाइज़ेशन चालू करें.
compose.foundationइस्तेमाल के लिए तैयार बिल्डिंग ब्लॉक की मदद से, Jetpack Compose ऐप्लिकेशन लिखें. साथ ही, अपना डिज़ाइन सिस्टम बनाने के लिए फ़ाउंडेशन को बढ़ाएं.
compose.materialइस्तेमाल के लिए तैयार Material Design कॉम्पोनेंट की मदद से, Jetpack Compose यूज़र इंटरफ़ेस (यूआई) बनाएं. यह Compose का सबसे ऊपरी लेवल का एंट्री पॉइंट है. इसे ऐसे कॉम्पोनेंट उपलब्ध कराने के लिए डिज़ाइन किया गया है जो www.material.io पर बताए गए कॉम्पोनेंट से मेल खाते हैं.
compose.material3मटीरियल डिज़ाइन के अगले वर्शन, Material Design 3 कॉम्पोनेंट की मदद से, Jetpack Compose यूज़र इंटरफ़ेस (यूआई) बनाएं. Material 3 में, अपडेट की गई थीम और कॉम्पोनेंट के साथ-साथ, Material You की डाइनैमिक कलर जैसी सुविधाएं शामिल हैं. इसे Android 12 के नए विज़ुअल स्टाइल और सिस्टम यूज़र इंटरफ़ेस (यूआई) के साथ काम करने के लिए डिज़ाइन किया गया है.
compose.runtimeCompose के प्रोग्रामिंग मॉडल और स्टेटस मैनेजमेंट के बुनियादी बिल्डिंग ब्लॉक. साथ ही, Compose कंपाइलर प्लग इन को टारगेट करने के लिए कोर रनटाइम.
compose.uiडिवाइस के साथ इंटरैक्ट करने के लिए, कॉम्पोज़ यूज़र इंटरफ़ेस (यूआई) के बुनियादी कॉम्पोनेंट ज़रूरी हैं. इनमें लेआउट, ड्रॉइंग, और इनपुट शामिल हैं.

डिपेंडेंसी का एलान करना

Compose पर डिपेंडेंसी जोड़ने के लिए, आपको अपने प्रोजेक्ट में Google Maven रिपॉज़िटरी जोड़नी होगी. ज़्यादा जानकारी के लिए, Google की Maven रिपॉज़िटरी पढ़ें.

अपने ऐप्लिकेशन या मॉड्यूल के लिए, build.gradle फ़ाइल में उन आर्टफ़ैक्ट की डिपेंडेंसी जोड़ें जिनकी आपको ज़रूरत है:

Groovy

dependencies {
    implementation "androidx.compose.material3:material3:1.3.1"
    implementation "androidx.compose.material3:material3-window-size-class:1.3.1"
    implementation "androidx.compose.material3:material3-adaptive-navigation-suite:1.4.0-alpha04"
}

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.1.1"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

Kotlin

dependencies {
    implementation("androidx.compose.material3:material3:1.3.1")
    implementation("androidx.compose.material3:material3-window-size-class:1.3.1")
    implementation("androidx.compose.material3:material3-adaptive-navigation-suite:1.4.0-alpha04")
}

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.1.1"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

डिपेंडेंसी के बारे में ज़्यादा जानने के लिए, बिल्ड डिपेंडेंसी जोड़ना लेख पढ़ें.

सुझाव

आपके सुझाव, शिकायत या राय से हमें Jetpack को बेहतर बनाने में मदद मिलती है. अगर आपको कोई नई समस्या मिलती है या इस लाइब्रेरी को बेहतर बनाने के लिए आपके पास कोई सुझाव है, तो हमें बताएं. नई लाइब्रेरी बनाने से पहले, कृपया इस लाइब्रेरी में मौजूद मौजूदा समस्याओं पर एक नज़र डालें. स्टार बटन पर क्लिक करके, किसी मौजूदा समस्या पर अपना वोट जोड़ा जा सकता है.

नई समस्या बनाना

ज़्यादा जानकारी के लिए, समस्या ट्रैकर का दस्तावेज़ देखें.

Material3 का कॉमन वर्शन 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 में ये कमिट शामिल हैं.

नई सुविधाएं

बिना थीम वाले कॉम्पोनेंट, जिनका इस्तेमाल मटीरियल डिज़ाइन कॉम्पोनेंट बनाने के लिए किया जा सकता है:

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 को होस्ट नहीं करना है. ज़रूरत पड़ने पर, इसे कॉम्पोनेंट के अंदर बनाया जाएगा. वैल्यू को शून्य पर सेट करने से, कुछ कॉम्पोनेंट को कभी भी 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 वर्शन में ये कमिट शामिल हैं.

नई सुविधाएं

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)

एपीआई में हुए बदलाव

  • पोज़िशन में, हिंज के बाउंड की प्रॉपर्टी को हिंज की जानकारी की सूची में ले जाया गया (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.4

वर्शन 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)
  • Shape ऑब्जेक्ट में, आकार की डिफ़ॉल्ट वैल्यू को कैश मेमोरी में सेव करना. टॉगल बटन के लिए, आकार को डिफ़ॉल्ट रूप से @Composable पर सेट करना. वैरिएंट एक ही टोकन फ़ाइल पर ले जाते हैं. इसलिए, सभी आकारों को एक आकार में छोटा किया जा सकता है. (Iaa014)

गड़बड़ियां ठीक की गईं

  • 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)
  • [बॉटम शीट] कॉलबैक की प्राथमिकता को PRIORITY_DEFAULT पर वापस सेट करें, ताकि IME कीबोर्ड को पहले खारिज किया जा सके. (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 के ऐक्टिव लेबल का रंग onSurface से secondary में बदला गया है. इससे, इस्तेमाल करने की सुविधा, रंग का कंट्रास्ट, और सिस्टम में एकरूपता को बेहतर बनाने में मदद मिलेगी (Ibc297). इसे पहले जैसा करने के लिए, डिफ़ॉल्ट रंग कॉपी करें और selectedTextColor को MaterialTheme.colorScheme.onSurface में बदलें.
  • Material 3 कॉम्पोनेंट, अब अपनी मोशन को तय करने के लिए नए MotionScheme का इस्तेमाल कर रहे हैं. (Ie0f93)
  • गतिविधि की स्थिति सर्कुलर फ़ॉर्मैट में दिखाने वाले इंडिकेटर की मोशन में बदलाव (I3c07e)
  • बेहतर कलर कंट्रास्ट के लिए, OutlinedIconButtonColors और OutlinedIconToggleButtonColors को अपडेट करें. (I2743d)
  • FilledIconToggleButtonColors और FilledTonalIconToggleButtonColors के लिए, कंटेनर और कॉन्टेंट का रंग अपडेट किया गया. (Ic5d0f)
  • OutlinedButton बॉर्डर का रंग outline से बदलकर outlineVariant किया गया. (057f00)

एपीआई में हुए बदलाव

  • reverseLayout के साथ सेट किए गए कॉन्टेंट को बेहतर तरीके से काम करने के लिए, TopAppBar के enterAlwaysScrollBehavior फ़ंक्शन में वैकल्पिक reverseLayout पैरामीटर जोड़ा गया है. (I4e0e5)
  • SegmentedButton अब contentPadding आर्ग्युमेंट के साथ काम करता है. (I5ad91, b/358414376)
  • PullToRefreshState में अब isAnimating के लिए डिफ़ॉल्ट तौर पर लागू होने की सुविधा नहीं है (I6a593)
  • TextFieldState का इस्तेमाल करने वाले, Material TextField और OutlinedTextField के नए ओवरलोड जोड़े गए हैं. TextFieldDecorator के साथ काम करने वाले, डेकोरेशन बॉक्स के एपीआई जोड़े गए. (If13a1)
  • टेक्स्ट फ़ील्ड के labelPosition को कंट्रोल करने के लिए पैरामीटर जोड़ा गया. alwaysMinimize का इस्तेमाल करने पर, यूज़र इंटरफ़ेस (यूआई) पैटर्न, टेक्स्ट फ़ील्ड में लेबल और प्लेसहोल्डर को एक साथ दिखाता है. ऐसा तब भी होता है, जब फ़ील्ड पर फ़ोकस न हो. (I1ef2c)
  • पासवर्ड डालने के फ़ील्ड के लिए, कॉन्टेंट SecureTextField और OutlinedSecureTextField जोड़े गए. (I7e22d)
  • ऐनिमेशन की प्रोग्रेस के बारे में क्वेरी करने के लिए, टेक्स्ट फ़ील्ड लेबल में स्कोप जोड़ा गया. (If5ec8)
  • टूलटिप में MotionEvent.CLASSIFICATION_DEEP_PRESS के काम करने की सुविधा जोड़ी गई है. (I62e6a)
  • TimePickerState का isAfternoon, अब इंटरफ़ेस में वैरिएबल के बजाय एक्सटेंशन वैल्यू है. इसका नाम बदलकर isPm (I89a97) कर दिया गया है
  • टाइपोग्राफ़ी क्लास को अपडेट किया गया है, ताकि हाइलाइट किए गए टाइप के स्केल काम कर सकें. (Ifa13c)
  • ModalWideNavigationRail एपीआई जोड़ा गया और ModalExpandedNavigationRail एपीआई का नाम बदलकर DismissibleModalWideNavigationRail कर दिया गया. (Ic9118)
  • screenOffset का हिसाब अपने-आप लगाने के लिए, FloatingAppBarScrollBehavior को अपडेट किया गया है. इसके लिए, @Composable की ज़रूरत नहीं है. (Idf349)
  • LoadingIndicator एपीआई में अपडेट, ताकि इसके डिफ़ॉल्ट ऑब्जेक्ट के नाम को ठीक किया जा सके. PullToRefresh पर LoadingIndicatorElevation कॉन्स्टेंट जोड़ा गया. (I1d72b)
  • LoadingIndicator एपीआई में अपडेट, ताकि इसके डिफ़ॉल्ट ऑब्जेक्ट के नाम को ठीक किया जा सके. PullToRefresh पर LoadingIndicatorElevation कॉन्स्टेंट जोड़ा गया. (I1d72b)
  • LinearWavyProgressIndicator और CircularWavyProgressIndicator के अनिश्चित वैरिएशन में, amplitude और waveSpeed पैरामीटर जोड़े गए. (I2a0c5)
  • आइकॉन टॉगल बटन को दबाने या चुने जाने की स्थिति के आधार पर, उसके आकार को बदलने की सुविधा. (Ibc781)
  • टाइपोग्राफ़ी क्लास को अपडेट किया गया है, ताकि हाइलाइट किए गए टाइप के स्केल काम कर सकें. (Ifa13c)
  • SplitButton डिफ़ॉल्ट / दबाए जाने की स्थिति के आधार पर आकार बदलना. AnimatedTrailingButton एपीआई को हटा दिया गया है, क्योंकि TrailingButton एपीआई में भी पसंद के मुताबिक बदलाव किए जा सकते हैं (I95066)
  • फ़्लोटिंग ऐक्शन बटन को दिखाने और छिपाने के लिए ऐनिमेशन जोड़ें. जैसे, जब कॉन्टेंट स्क्रोल किया जाता है. (I8338d)
  • सैंपल में इस्तेमाल करने के लिए, ButtonGroupDefaults में कनेक्ट किए गए बटन ग्रुप के आकार और स्पेस जोड़ना. (I68e30)
  • स्प्लिट बटन, आखिरी बटन के लिए हॉरिज़ॉन्टल पैडिंग जोड़ता है. साथ ही, शुरुआत और आखिर के कोने के अंतर से कैलकुलेट की गई ऑप्टिकल सेंटरिंग की सुविधा चालू करता है (I122e2)
  • पेश है एक नया Material MotionScheme, जिसकी मदद से कॉम्पोनेंट की मोशन के लिए स्कीम सेट की जा सकती है. स्कीम को MaterialTheme के ज़रिए सेट किया जाता है. (Id50c2)

गड़बड़ियां ठीक की गईं

  • Scaffold चाइल्ड कॉम्पोज़ेबल पर फ़ोकस ट्रैवल इंडेक्स सही तरीके से लागू करें. क्रम इस तरह है: topBar, bottomBar, फ़ैब, कॉन्टेंट, स्नैकबार. (I5936b)
  • DatePicker और DateRangePicker में एक समस्या को ठीक किया गया है. इस समस्या की वजह से, कुछ स्थानीय भाषाओं और फ़ॉर्मैट-स्केलेटन में तारीख के कुछ एलिमेंट (जैसे, महीने के नाम) बड़े अक्षर से शुरू नहीं होते थे. (I1430f)
  • एफ़एबी और एफ़एबी मेन्यू कॉम्पोनेंट टोकन इंटिग्रेट करें (पैडिंग और टेक्स्ट में छोटे विज़ुअल अपडेट) (Ib57f3)
  • ModalBottomSheet अब सेमैंटिक ट्रैवर्सल के क्रम में सबसे पहले आता है. इसके बाद, स्क्रीम आता है. (I436f9, b/358594665)
  • किनारे से किनारे तक मोड में, नेविगेशन पिल के नीचे स्क्रोल करने पर, सबसे नीचे मौजूद ऐप्लिकेशन बार पूरी तरह से न दिखने की समस्या को ठीक किया गया (I3ee21)

Compose Material3 का वर्शन 1.3

वर्शन 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 के नए कॉम्पोनेंट

  • कैरसेल
  • [ModalBottomSheet] अब U+ (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) विज़ुअल में होने वाले बदलाव
  • फ़ोकस स्टेटस ओवरले को 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 (a10a2d) पर, BottomSheet कॉन्टेंट मौजूद न होने या काट दिए जाने की समस्या को ठीक किया गया
  • 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, ऊंचाई की सुविधा के साथ काम करता है. साथ ही, 'खींचें और रीफ़्रेश करें' एपीआई को अपडेट करता है, ताकि 'चालू है' को लैम्ब्डा के बजाय बूलियन के तौर पर सेट किया जा सके. 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 थीम वाले लिंक पाने के लिए, एपीआई को अपडेट किया गया. खास तौर पर, थीम वाले LinkAnnotations बनाने और थीम वाले लिंक के साथ एचटीएमएल को पार्स करने के लिए, TextDefaults से तरीके हटा दिए गए हैं. इसके बजाय, एक 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)

एपीआई में हुए बदलाव

  • RippleConfiguration#isEnabled को हटा दिया गया है और LocalRippleConfiguration को वैल्यू के बिना इस्तेमाल किया जा सकता है. रिपल को बंद करने के लिए, isEnabled = false के साथ RippleConfiguration देने के बजाय, null से LocalRippleConfiguration दें. (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 को अपडेट किया गया, ताकि उस मास्क Rect को दिखाया जा सके जिससे आइटम को क्लिप किया जा रहा है (I785d8)
  • Material 3 के सार्वजनिक एपीआई से BasicTooltipState को हटाया गया. फ़ाउंडेशन के BasicTooltip के स्थिर होने तक, इसकी सुविधाओं को TooltipState के साथ जोड़ा जाता है. (Icda29)
  • TextDefaults ऑब्जेक्ट जोड़ा गया है. इसमें LinkAnnotation बनाने और एचटीएमएल टैग वाली स्ट्रिंग को पार्स करने के तरीके शामिल हैं. यह स्ट्रिंग, लिंक (I98532, b/139312671) पर MaterialTheme लागू करती है
  • ExposedDropdownMenuBoxScope में अब सबक्लास की अनुमति नहीं है. एक्सपोज़्ड ड्रॉपडाउन मेन्यू में अब MenuAnchorType है. इसे menuAnchor को पास किया जाना चाहिए, ताकि a11y को बेहतर तरीके से इस्तेमाल किया जा सके. focusable को ExposedDropdownMenu में पास करने के बजाय, इसका इस्तेमाल किया जाना चाहिए. ExposedDropdownMenu का इस्तेमाल अब बंद कर दिया गया है. menuAnchor में enabled की स्थिति को कंट्रोल करने के लिए एक नया पैरामीटर है. (I55ee6, b/257209915, b/308840226)
  • बंद होने पर OutlinedButton के बॉर्डर का रंग ठीक किया गया. ButtonDefaults.outlinedButtonBorder("enabled") ओवरलोड जोड़ा गया, जो चालू की गई स्थिति को लेता है. (Ie650b, b/318461363)
  • क्लाइंट को आइटम के साइज़ की जानकारी देने के लिए, नई CarouselItemInfo क्लास जोड़ी गई है. (I9070c)
  • ColorScheme कन्स्ट्रक्टर के बिना, सरफ़ेस कंटेनर अब काम नहीं करते. कृपया उस कन्स्ट्रक्टर पर माइग्रेट करें जिसमें प्लैटफ़ॉर्म के हिसाब से कंटेनर शामिल हों. (I35c11)
  • [आउटलाइन किया गया]TextFieldDefaults ContainerBox का नाम बदलकर Container किया गया. (Ie8d3b)

गड़बड़ियां ठीक की गईं

  • अगर sheetSwipeEnabled गलत है, तो 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)
  • Compose M3 के नेविगेशन पैनल (ModalDrawerSheet और DismissibleDrawerSheet) को अपडेट किया गया, ताकि U+ पर अनुमानित वापसी की सुविधा को ऑप्ट-इन के तौर पर इस्तेमाल किया जा सके (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)
  • स्लाइडर ट्रैक कॉम्पोज़ेबल में पैरामीटर का क्रम बदलना. (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)
  • @Stable को Slider के स्टेटस से हटा दिया गया है, क्योंकि हम state.onValueChangeFinished को var में बदल रहे हैं. (Ied34a, b/322269951)
  • ModalBottomSheet और StandardBottomSheet ऐनिमेशन स्पेसिफ़िकेशन अब TweenSpec है. इसे स्प्रिंग ऐनिमेशन से अपडेट किया गया है. इससे, ओवरशूट की समस्या हल हो जाती है. अब डेंसिटी के बिना काम न करने वाले SheetState कन्स्ट्रक्टर हटा दिए गए हैं. (I7babc, b/285847707)

गड़बड़ियां ठीक की गईं

  • SurfaceContainer वैरिएंट का इस्तेमाल अब कॉम्पोनेंट करते हैं. जिन कॉम्पोनेंट में Surface और 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+ पर अनुमानित शब्दों के सुझाव दिखाने की सुविधा काम कर सके (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 पर सेट होती है. यहां कोई सेमेटिक बदलाव नहीं किया गया है: शून्य पास करने का मतलब है कि आपको MutableInteractionSource को होस्ट नहीं करना है. ज़रूरत पड़ने पर, इसे कॉम्पोनेंट के अंदर बनाया जाएगा. वैल्यू को शून्य पर सेट करने से, कुछ कॉम्पोनेंट को कभी भी MutableInteractionSource नहीं दिया जाता. साथ ही, अन्य कॉम्पोनेंट को ज़रूरत पड़ने पर ही इंस्टेंस बनाने की अनुमति मिलती है. इससे इन कॉम्पोनेंट की परफ़ॉर्मेंस बेहतर होती है. अगर इन कॉम्पोनेंट में पास किए गए MutableInteractionSource का इस्तेमाल नहीं किया जा रहा है, तो हमारा सुझाव है कि आप इसके बजाय null पास करें. हमारा सुझाव है कि आप अपने कॉम्पोनेंट में भी इसी तरह के बदलाव करें. (I41abb, b/298048146)
  • RippleConfiguration और LocalRippleConfiguration जोड़ता है, ताकि तय वैल्यू का इस्तेमाल करके, हर कॉम्पोनेंट / सब-ट्री के लिए रिपल को पसंद के मुताबिक बनाया जा सके. उदाहरण के लिए, किसी ऐसे कॉम्पोनेंट का रंग बदलना जिसका कंट्रोल आपके पास नहीं है या किसी कॉम्पोनेंट के लिए रिपल इफ़ेक्ट बंद करना. ज़्यादातर मामलों में, डिफ़ॉल्ट वैल्यू का इस्तेमाल किया जाना चाहिए: ये एपीआई, अलग-अलग कॉम्पोनेंट / सीमित सब-ट्री को पसंद के मुताबिक बनाने के लिए एक 'बचाव का रास्ता' हैं. बड़े बदलावों और कस्टम डिज़ाइन सिस्टम के लिए, आपको createRippleModifierNode का इस्तेमाल करके अपना रिपल बनाना चाहिए. (I7b5d6, b/298048146)
  • material3 में नया ripple API जोड़ा गया है, जो अब काम न करने वाले rememberRipple की जगह लेगा. साथ ही, यह कुछ समय के लिए CompositionLocal, LocalUseFallbackRippleImplementation भी जोड़ता है, ताकि material3 कॉम्पोनेंट को, इस्तेमाल नहीं किए जा रहे rememberRipple / RippleTheme एपीआई का इस्तेमाल करने के लिए वापस लाया जा सके. इसे अगले स्टेबल रिलीज़ में हटा दिया जाएगा. यह सिर्फ़ उन मामलों में माइग्रेशन में कुछ समय के लिए मदद करने के लिए है जहां कस्टम RippleTheme दिया जा रहा है. (I34cbc, b/298048146)

गड़बड़ियां ठीक की गईं

  • परफ़ॉर्मेंस को बेहतर बनाने के लिए, ModalBottomSheet में मौजूद सब-कंपोज़िशन हटाया गया. LookaheadScope के साथ कुछ खास स्थितियों में ModalBottomSheet के क्रैश होने की समस्या को ठीक किया गया है. (I2a198)
  • परफ़ॉर्मेंस को बेहतर बनाने के लिए, BottomSheetScaffold में मौजूद सब-कंपोज़िशन हटाया गया. LookaheadScope के साथ कुछ खास स्थितियों में BottomSheetScaffold के क्रैश होने की समस्या को ठीक किया गया है. (Ie6401)
  • बैज के अलाइनमेंट को सबसे ऊपर दाएं कोने के हिसाब से, ऐंकर कॉन्टेंट के बीच में लाने के लिए अडजस्ट किया जाता है. (I18a28)
  • DateRangePicker में a11y से जुड़ी एक समस्या को ठीक किया गया है. इसमें, महीने और साल के टेक्स्ट टाइटल को स्क्रीन रीडर, बटन से ऐक्सेस करने की सुविधा, और वॉइस ऐक्सेस के उपयोगकर्ताओं के लिए, कार्रवाई करने लायक के तौर पर दिखाया गया था. (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)
  • @Stable को Slider के स्टेटस से हटा दिया गया है, क्योंकि हम state.onValueChangeFinished को var में बदल रहे हैं. (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 कॉम्पोनेंट

मटीरियल डिज़ाइन 3 के मौजूदा कॉम्पोनेंट में सुधार.

  • बॉटम ऐप्लिकेशन बार (दाईं से बाईं ओर अलाइनमेंट, स्क्रोल करने पर अपने-आप छिपना)
  • टैब के विज़ुअल में बदलाव
  • बैज (अलाइनमेंट अपडेट)

प्रयोग के तौर पर उपलब्ध एपीआई को स्टेबल वर्शन में अपग्रेड किया गया!

परफ़ॉर्मेंस में सुधार

वर्शन 1.2.0-rc01

24 जनवरी, 2024

androidx.compose.material3:material3-*:1.2.0-rc01 रिलीज़ हो गया है. 1.2.0-rc01 वर्शन में ये बदलाव शामिल हैं.

गड़बड़ियां ठीक की गईं

  • mediumTopAppBarColors पैरामीटर के क्रम से जुड़ी गड़बड़ी को ठीक किया गया. (Ibe64a)
  • CardDefaults.cardColors में 1.2.0-beta02 में आने वाली एक गड़बड़ी को ठीक किया गया है. इस गड़बड़ी की वजह से, 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 के बजाय, disabledContentColor को डिफ़ॉल्ट रूप से LocalContentColor के अल्फा (0.38f) पर असाइन कर दिया जाएगा. इस समस्या को हल करने के लिए, disabledContentColor को साफ़ तौर पर सेट करें. इस समस्या को अगले वर्शन में ठीक कर दिया जाएगा.

एपीआई में हुए बदलाव

  • सामान्य Tooltip एपीआई के लिए, टूलटिप कर्सर चालू करने की सुविधा जोड़ी गई है. (Ibf767)
  • SwipeToDismissState, rememberSwipeToDismiss, और SwipeToDismissValue के नाम बदलकर _SwipeToDismissBox_ कर दिए गए हैं. (I68d6d)

गड़बड़ियां ठीक की गईं

  • स्पेसिफ़िकेशन के मुताबिक अलाइन करने के लिए, ListItem एंड पैडिंग की वैल्यू को ठीक किया गया. (Ibd68b, b/305342674)
  • आउटलाइन वाले कार्ड के लिए आउटलाइन का रंग, अब OutlineVariant पर सही तरीके से मैप हो गया है. (I75480, b/310979715)
  • डाइनैमिक रंग की सुविधा, अब सिस्टम में तय की गई रंग की भूमिकाओं से रंग लेती है. इससे, ऐक्सेस किए जा सकने वाले कॉन्टेंट के कंट्रास्ट में सुधार होता है. साथ ही, डाइनैमिक कलर को Material स्पेसिफ़िकेशन के हिसाब से अलाइन किया जाता है. (I1de96)
  • ModalBottomSheet Android T/13 और इसके बाद के वर्शन पर, android:enableOnBackInvokedCallback="true" होने पर बैक बटन की हैंडलिंग को ठीक किया गया. (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 अब सेवर और कन्स्ट्रक्टर को हटा दिया गया है. 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)
  • मॉडिफ़ायर फ़ैक्ट्री फ़ंक्शन को @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 लामBDA फ़ंक्शन के आखिर में लगाएं. (I7f4d3)
  • ChipElevation और SelectableChipElevation के लिए कन्स्ट्रक्टर को सार्वजनिक करें. (Ie0c48, b/308432421)
  • ModalBottomSheetProperties को जोड़ा जा रहा है. securePolicy को ModalBottomSheetProperties में ले जाया जा रहा है. isFocusable और shouldDismissOnBackPress को ModalBottomSheetProperties में जोड़ना. इन नए बूलियन से यह तय करने में मदद मिलती है कि मॉडल बॉटम शीट को IME इवेंट कैसे मैनेज करने चाहिए. (Iea56f, b/278216859)
  • initialOnValueChange, शुरुआती प्रीफ़िक्स, और सही kdocs को हटाने के लिए, RangeSlider और Slider की स्थितियों को अपडेट किया गया. (I57d30)
  • ChipBorder क्लास और उससे जुड़े फ़ंक्शन कॉल को बंद करें. इसके बजाय, सीधे BorderStroke का इस्तेमाल करने का सुझाव दें. (I89cc2)
  • फ़ाउंडेशन टूलटिप एपीआई अब @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)

गड़बड़ियां ठीक की गईं

  • नेस्ट किए गए लुकअहेड और लेज़ी लेआउट की कुछ स्थितियों में, 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 को 'खोलें' और 'बंद करें' तरीकों से बदल दिया गया है. साथ ही, ऑफ़सेट को अब स्टेटस ऑब्जेक्ट के बजाय फ़्लोट के तौर पर दिखाया जाता है. currentOffset की मदद से, सीधे ऑफ़सेट को ऐक्सेस किया जा सकता है. (I0a72c)
  • सीधे तौर पर DatePickerState और DateRangePickerState बनाने के लिए, ऐसे फ़ंक्शन जोड़े गए हैं जिन्हें कॉम्पोज़ नहीं किया जा सकता. ज़रूरत पड़ने पर, इन फ़ंक्शन का इस्तेमाल, Composable 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 को भी जोड़ा गया है, ताकि फ़्लोटिंग ऐक्शन बटन, स्कैफ़ोल्ड में सबसे नीचे मौजूद ऐप्लिकेशन बार के ऊपर ऐंकर होने के बजाय, उसे ओवरले कर सके. (Iecb47)
  • BasicTooltipBox के ऊपर एक आसान लेबल कॉम्पोनेंट जोड़ा गया है. यह लेबल की सीमाओं के बाहर टैप करने पर भी नहीं हटेगा. (I821f9)

गड़बड़ियां ठीक की गईं

  • टूलटिप के लिए rememberSaveable का इस्तेमाल हटा दिया गया. (Icc131, b/299500338)
  • हमने एक अस्थायी फ़्लैग जोड़ा है. इससे यह कंट्रोल किया जा सकता है कि मेज़रमेंट के दौरान या प्लेसमेंट के दौरान, स्कैफ़ोल्ड को अपने चाइल्ड को मेज़र करना चाहिए या नहीं. डिफ़ॉल्ट रूप से, यह मेज़रमेंट में मेज़र होगा. अगर आपको इस नए तरीके से समस्याएं आ रही हैं, तो कृपया समस्या दर्ज करें. (I0b354)
  • डिवाइस की स्क्रीन की चौड़ाई के लिए सही मेज़रमेंट का इस्तेमाल करके, BottomSheet में हॉरिज़ॉन्टल एज टू एज को ठीक किया गया. (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) को लागू करता है
  • shape को ज़रूरी पैरामीटर में बदलें. शेप हेल्पर फ़ंक्शन में, position का नाम बदलकर index करें. (I34941)
  • DatePicker formatWithSkeleton को अपडेट करता है, ताकि उसमें एक ऐसा मैप शामिल किया जा सके जिसका इस्तेमाल परफ़ॉर्मेंस को बेहतर बनाने के लिए कैश मेमोरी के तौर पर किया जाता है. (I3195f)
  • compose.foundation में BasicTooltipBox जोड़ा गया. साथ ही, TooltipBox को नए PlainTooltip और RichTooltip कॉम्पोज़ेबल के साथ इस्तेमाल करने के लिए, PlainTooltipBox और RichTooltipBox को अपडेट किया गया. (I79e1d)

गड़बड़ियां ठीक की गईं

  • dynamicLightColorScheme और dynamicDarkColorScheme अब सरफ़ेस और surfaceContainer भूमिकाओं के लिए ज़्यादा क्रोम रंग दिखाते हैं. (I5e901)
  • एक समस्या को ठीक किया गया है. इसमें, LookaheadScope के अंदर स्कैफ़ोल्ड में सब-कंपोज़िशन (उदाहरण के लिए, BottomSheetScaffold) का इस्तेमाल करने वाले कुछ कॉम्पोनेंट, अपने साइज़ को बहुत पहले पढ़ने की कोशिश कर रहे थे. (I297b4, I871f1, b/295536718)

वर्शन 1.2.0-alpha06

23 अगस्त, 2023

androidx.compose.material3:material3-*:1.2.0-alpha06 रिलीज़ हो गया है. 1.2.0-alpha06 वर्शन में ये बदलाव शामिल हैं.

गड़बड़ियां ठीक की गईं

  • DropdownMenu के offset कैलकुलेशन को ठीक किया गया है, ताकि x ऑफ़सेट सिर्फ़ स्थानीय लेआउट के डायरेक्शन पर निर्भर हो. साथ ही, मेन्यू के स्क्रीन पर सबसे नीचे होने पर, y ऑफ़सेट अब उलट नहीं किए जाएंगे. (Iccc74, b/294103942)
  • DropdownMenu के offset कैलकुलेशन को ठीक किया गया है, ताकि 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 वर्शन में ये बदलाव शामिल हैं.

नई सुविधाएं

  • एक्सपेरिमेंट के तौर पर उपलब्ध सेगमेंट बटन एपीआई (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)
  • DefaultSizeClasses को एक्सपोज़ करें और WindowSizeClasses के लिए StandardSizeClasses बनाएं (I91838)
  • WindowWidth/HeightSizeClass को फ़्लोट वैल्यू क्लास (Ie686e) में बदलें

गड़बड़ियां ठीक की गईं

  • स्कैफ़ोल्ड का 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 में विंडो इनसेट पैरामीटर जोड़ें.
    • ModalBottomSheet के लिए स्क्रीम, अब स्टेटस बार के पीछे खींची जा सकती है. इसके लिए, windowInsets को शून्य पर सेट करें
    • नेविगेशन के साथ-साथ सिस्टम बार से बाहर रहने के लिए, ModalBottomSheet की डिफ़ॉल्ट सुविधा को अपडेट किया गया
    • स्टेटस बार के इनसेट को हैंडल करने की सुविधा, किनारे से किनारे तक मोड में ड्रैग हैंडल की मदद से मिलती है.
    • BottomSheetDefaults में BottomSheetWindow के लिए विंडो इनसेट शामिल हैं. (I31200, b/274872542, b/272973615, b/272334475, b/268432129, b/275849044, b/275486106, b/268433162)
  • Indicator को बंद करें और M3 के स्पेसिफ़िकेशन के हिसाब से 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 फ़ंक्शन जोड़े गए हैं. TooltipSync को हटाकर TooltipDefault.GlobalMutatorMutex जोड़ा गया. (I7813d)
  • DatePickerColors को अपडेट किया गया है, ताकि तारीख चुनने वाले टूल के डिवाइडर, नेविगेशन, और टेक्स्ट इनपुट फ़ील्ड के रंगों को पसंद के मुताबिक बनाने के लिए ज़्यादा विकल्प शामिल किए जा सकें. (I1a685, b/274626815)
  • DatePickerState और DateRangePickerState अब डिफ़ॉल्ट तौर पर लागू होने वाले सार्वजनिक इंटरफ़ेस हैं. इन्हें rememberDatePickerState और rememberDateRangePickerState से वापस पाया जा सकता है. (I71c52)
  • DatePicker और DateRangePicker से dateValidator हटा दिया गया है. साथ ही, SelectableDates इंटरफ़ेस जोड़ा गया है. इसे स्टेटस पर सेट किया जा सकता है, ताकि यह कंट्रोल किया जा सके कि यूज़र इंटरफ़ेस (यूआई) में कौनसी तारीखें या साल चुने जा सकते हैं. (Ic2fc6)
  • TimePicker को स्टेबल एपीआई से हटा दिया गया है. स्टेटस एपीआई (I3f39a) में और बदलाव होने की उम्मीद है
  • ModalBottomSheet सिर्फ़ Android पर ले जाया गया. ModalBottomSheet का इस्तेमाल डेस्कटॉप पर करने का सुझाव नहीं दिया जाता. साथ ही, इस सुविधा को सक्रिय रूप से मैनेज नहीं किया जाता. (Ib3778)

गड़बड़ियां ठीक की गईं

  • जब कार्रवाइयां, डायलॉग की चौड़ाई में फ़िट होने के लिए एक-दूसरे के ऊपर स्टैक की जाती हैं, तो AlertDialog खारिज करें कार्रवाई को पुष्टि करने की कार्रवाई के नीचे दिखाने की समस्या को ठीक किया गया है. इस सुधार से, Material Design के स्पेसिफ़िकेशन के मुताबिक लागू किया जा सकता है. (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)
  • TimePickerState फ़ंक्शन को 23 घंटे से शुरू करने पर, गलत घंटे दिखते हैं. (b/278242122)
  • दोपहर और मिनट की पुष्टि के लिए, टॉगल की शुरुआती स्थिति को ठीक किया गया. (b/269768197, b/282790635)
  • state.hour में रात 11 बजे के लिए गलत वैल्यू दिखाने की समस्या को ठीक किया गया. (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 में विंडो इनसेट पैरामीटर जोड़ें.
    • 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 के नए कॉम्पोनेंट

मटीरियल डिज़ाइन 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)
  • इस स्थिति में व्यवहार को ज़्यादा सटीक और आसानी से दिखाने के लिए, 'छोटा किया गया 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 एपीआई की मदद से तारीख की सीमाएं चुनने के लिए, Material 3 इनपुट मोड की सुविधा जोड़ी गई है. (Ifdbc4)
  • टेक्स्ट फ़ील्ड के रंगों को अब पसंद के मुताबिक बनाया जा सकता है:
    • फ़ोकस और गड़बड़ी की स्थिति के आधार पर, इनपुट फ़ील्ड और प्लेसहोल्डर टेक्स्ट के रंग. textColor पैरामीटर का नाम बदलकर unfocusedTextColor कर दिया गया है और placeholderColor का नाम बदलकर unfocusedPlaceholderColor कर दिया गया है.
    • नए errorContainerColor पैरामीटर की मदद से, गड़बड़ी की स्थिति के आधार पर भरे गए टेक्स्ट फ़ील्ड के लिए कंटेनर का रंग.
  • एक्सपोज़्ड ड्रॉपडाउन मेन्यू के टेक्स्ट फ़ील्ड के रंगों को पैरामीटर के साथ अपडेट किया गया है, ताकि नए प्रीफ़िक्स और सफ़िक्स एपीआई के साथ काम किया जा सके. (I9c8b4, b/254284181, b/264766350)

एपीआई में हुए बदलाव

  • हम कुछ स्लाइडर एपीआई वर्शन को पहले जैसा कर रहे हैं. साथ ही, ऐसे स्लाइडर ओवरलोड हटा रहे हैं जो कस्टम थंबनेल और ट्रैक वाले नए एक्सपेरिमेंटल स्लाइडर में शामिल हैं. 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 में कस्टम थंबनेल और ट्रैक जोड़ा गया.

डिपेंडेंसी से जुड़े अपडेट

वर्शन 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 एपीआई. इस एपीआई में अब भी बदलाव किए जा रहे हैं. (I722b9)
  • PlainTooltipBox के ज़रिए, सादे टूलटिप के लिए सहायता जोड़ी गई. (I0cdfb)
  • खोज बार (Iad128)
  • SwipeToDismiss (I458a8, b/242889540)

एपीआई में हुए बदलाव

  • Surfaces पर IsContainer सेमेटिक्स प्रॉपर्टी में जोड़ा गया. इस प्रॉपर्टी का इस्तेमाल, बाद में किए जाने वाले उस बदलाव में किया जाएगा जो सतहों जैसे एलिमेंट के सेमैनटिक मतलब के आधार पर, ट्रैवर्सल का क्रम तय करता है. (I63379)
  • नेविगेशन ड्रॉअर से जुड़े एपीआई को 'स्टैबल' के तौर पर मार्क करें. (Iab01e, b/261439597)
  • सर्कुलर प्रोग्रेस इंडिकेटर के लिए ट्रैक कलर पैरामीटर और सर्कुलर और लीनियर प्रोग्रेस इंडिकेटर, दोनों के लिए स्ट्रोक कैप पैरामीटर जोड़ा गया. (Ie668c, b/216325962, b/222964817)
  • अब काम न करने वाले और छिपाए गए फ़ंक्शन के लिए, रिटर्न टाइप के तौर पर वैल्यू न होने की संभावना ज़्यादा है (Ibf7b0)
  • Modifier.minimumInteractiveComponentSize जोड़ें. इसका इस्तेमाल, टच इंटरैक्शन को अलग-अलग करने के लिए, कम से कम 48.dp के साइज़ को रिज़र्व करने के लिए किया जा सकता है. ऐसा तब किया जाता है, जब एलिमेंट का साइज़ छोटा हो. (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)
  • पैरंट पेज के स्क्रोल की जानकारी क्वेरी करने के लिए, मॉडिफ़ायर एपीआई जोड़ा गया. (I2ba9d, b/203141462)
  • Clickable में इसका इस्तेमाल, प्रेस इंटरैक्शन में देरी करने के लिए किया जाता है. ऐसा तब किया जाता है, जब जेस्चर स्क्रोल इवेंट बन सकते हैं.
  • Scrollable ViewGroup के अंदर इस्तेमाल करने पर, Clickables के रिपल सही तरीके से देर से नहीं दिखने की समस्या को ठीक किया गया.
  • ड्रॉअर और शीट को अपडेट किया गया है, ताकि जेस्चर के स्क्रोल इवेंट बनने की स्थिति में, प्रेस करने में सही समय लग सके.

डिपेंडेंसी से जुड़े अपडेट

  • Compose UI और Compose Material अब लाइफ़साइकल 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)
  • material और material3 टेक्स्ट, 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 और ब्रश के साथ टाइटल लागू करने पर, सबसे ऊपर मौजूद ऐप्लिकेशन बार में होने वाली गड़बड़ियों को ठीक किया गया है. (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)
  • मौजूदा स्लाइडर एपीआई के लिए, दो ओवरलोड किए गए तरीके जोड़े गए हैं. इससे उपयोगकर्ता, स्लाइडर को पॉप्युलेट करने के लिए थंब या ट्रैक को पास कर सकते हैं. (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 वर्शन में ये कमिट शामिल हैं.

एपीआई में हुए बदलाव

  • beta01 वर्शन में m3 कॉम्पोनेंट में जोड़े गए डिफ़ॉल्ट कॉम्पोनेंट इनसेट, अब IME इनसेट के तौर पर काम नहीं करते.
  • Material3 स्काफ़ोल्ड कॉम्पोनेंट में अब 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 एपीआई के रेफ़रंस की खास जानकारी देखें.

एपीआई में हुए बदलाव

  • Material 3 के टॉप ऐप्लिकेशन बार को अपडेट किया गया है, ताकि उसे पूरी तरह से छोटा करके, पूरी तरह से बड़ा किया जा सके. साथ ही, TopAppBarDefaults के व्यवहार फ़ंक्शन को Composables में अपडेट किया गया है. साथ ही, उनके टॉप ऐप्लिकेशन बार की स्थिति और ऐनिमेशन स्पेसिफ़िकेशन के लिए डिफ़ॉल्ट वैल्यू दी गई हैं. (I642b3)
  • फ़्लोटिंग ऐक्शन बटन (एफ़एबी) कॉम्पोनेंट के हस्ताक्षर अपडेट किए गए, ताकि वे सरफ़ेस एपीआई (I3afaa) से मेल खा सकें
  • सबसे ऊपर मौजूद ऐप्लिकेशन बार, ड्रॉअर, नेविगेशन बार, और रेल के लिए, इनसेट की बिल्ट-इन सुविधा जोड़ी गई. इन कॉम्पोनेंट को अलग से या Scaffold के साथ इस्तेमाल करने पर, ये डेवलपर के लिए इनसेट को अपने-आप मैनेज कर देंगे. ध्यान दें: इस बदलाव से, स्टेटस बार के आइकॉन अपने-आप मैनेज नहीं होंगे. साथ ही, स्टेटस और नेविगेशन बार पारदर्शी नहीं होंगे. बेहतरीन अनुभव पाने के लिए, कृपया मैन्युअल तरीके से ही इन्हें सेट करें. (I7e4e6, b/183161866)
  • आने वाले समय में आसानी से बदलाव करने और परफ़ॉर्मेंस को बेहतर बनाने के लिए, एपीआई के इस्तेमाल को कम करने के मकसद से कॉम्पोनेंट के डिफ़ॉल्ट वैल्यू को अपडेट किया गया है. (I31820)
  • एपीआई में एक जैसी जानकारी देने के लिए, चिप और नेविगेशन ड्रॉअर शीट के पैरामीटर का क्रम बदला गया (I45d0b)
  • Divider से 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)
  • एपीआई में एक जैसी जानकारी देने के लिए, NavigationBar और NavigationRail पैरामीटर का क्रम बदलें (I51cda)
  • एपीआई में एक जैसी शैली बनाए रखने के लिए, 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)

एपीआई में हुए बदलाव

  • selectedIcon स्लॉट को हटाने और चुनी गई स्थिति दिखाने के लिए, FilterChip और ElevatedFilterChip एपीआई में अपडेट किए गए हैं. साथ ही, 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) में पैरामीटर के नाम को वैल्यू से वैल्यू में बदलना
  • Material Design स्पेसिफ़िकेशन के मुताबिक, चुने जा सकने वाले स्टेटस के साथ काम करने के लिए, InputChip लागू करने के तरीके में एपीआई में बदलाव किए गए हैं. चुने गए बंद स्टेटस के लिए, FilterChip कलर में अतिरिक्त सहायता. (I55244, b/235792432)
  • BottomAppBar डिफ़ॉल्ट फ़्लोटिंग ऐक्शन बटन (Ida4c8) जोड़ें
  • ColorScheme.surfaceColorAtElevation जोड़ा गया (Id41af)
  • Compose लाइब्रेरी में इंटरफ़ेस, अब jdk8 के डिफ़ॉल्ट इंटरफ़ेस तरीकों (I5bcf1) का इस्तेमाल करके बनाए जाते हैं
  • WindowWidthSizeClass और WindowHeightSizeClass अब तुलना करने की सुविधा लागू करते हैं, ताकि ऑपरेटर (<, <=, >=, >) और अन्य एपीआई का इस्तेमाल करके उनकी तुलना की जा सके. (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 वर्शन में ये बदलाव शामिल हैं.

नई सुविधाएं

  • तीसरे कॉन्टेंट (I18e38) में RangeSlider जोड़ा गया
  • Material3 AssistChip और InputChip के साथ काम करने की सुविधा जोड़ी गई (I0d25a)
  • Material3 FilterChip और SuggestionChip के लिए सहायता जोड़ता है (I9fdf3)

एपीआई में हुए बदलाव

  • TextFieldDefaults.BorderStroke कॉम्पोज़ेबल का नाम बदलकर OutlinedTextField से TextFieldDefaults.BorderBox कर दिया गया, जो बॉर्डर स्ट्रोक बनाता है. (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 से आखिर में मौजूद lambda को हटाता है. (I92c47)
  • Material3 FilledIconButton, FilledTonalIconButton, और OutlinedIconButton जोड़ता है. (Ib2bda)
  • वैकल्पिक ऐक्शन और खारिज करने की कार्रवाई के लिए रंग की वैल्यू स्वीकार करने के लिए, Material 3 स्नैकबार एपीआई को अपडेट करता है. (Ibe4b4)
  • PointerInputChange में, आंशिक खपत (डाउन या पोज़िशन) की सुविधा बंद कर दी गई है. बदलाव को पूरी तरह से लागू करने के लिए, consume() का इस्तेमाल किया जा सकता है. isConsumed का इस्तेमाल करके यह पता लगाया जा सकता है कि किसी और ने पहले से ही बदलाव का इस्तेमाल किया है या नहीं.
  • PointerInputChange::copy() अब हमेशा शैलो कॉपी बनाता है. इसका मतलब है कि PointerInputChange की एक कॉपी इस्तेमाल होने के बाद, उसकी बाकी कॉपी भी इस्तेमाल हो जाएंगी. अगर आपको अनबाउंड PointerInputChange बनाना है, तो इसके बजाय कन्स्ट्रक्टर का इस्तेमाल करें. (Ie6be4, b/225669674)
  • Cards API में बदलाव किए गए हैं, ताकि CardColors इंटरफ़ेस की मदद से कंटेनर और कॉन्टेंट के रंग पाए जा सकें. साथ ही, क्लिक किए जा सकने वाले कार्ड के लिए, बंद की गई स्थिति का इस्तेमाल किया जा सके. (I927df)
  • अन्य कॉम्पोनेंट के साथ बेहतर तरीके से काम करने के लिए, Material 3 के टेक्स्ट फ़ील्ड में पैरामीटर backgroundColor का नाम बदलकर containerColor कर दिया गया है. (I6fbd9)

गड़बड़ियां ठीक की गईं

  • स्टैंडर्ड IconButton को Material3 स्पेसिफ़िकेशन के मुताबिक बनाने के लिए अपडेट. (I09eab)
  • material3 स्काफ़़्ल के टॉप बार की ऊंचाई को कॉन्टेंट के लिए पास किए गए पैडिंग में ले जाएं. इससे कॉन्टेंट, ऐप्लिकेशन के टॉप बार के नीचे रेंडर हो पाएगा. अगर 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 में एक बड़ा पैरामीटर जोड़ा गया है, ताकि यह कंट्रोल किया जा सके कि एफ़एबी बड़ा है या छोटा. साथ ही, हर स्टेटस के बीच ऐनिमेशन भी जोड़े गए हैं. एक्सटेंडेड एफ़एबी के लिए, आइकॉन के बिना एक्सटेंडेड एफ़एबी के लिए टेक्स्ट के साथ एक्सटेंडेड एफ़एबी ओवरलोड जोड़ा गया. (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 में अपडेट, जो क्लिक किए जा सकने वाले प्लैटफ़ॉर्म के लिए, ओवरलोड किए गए फ़ंक्शन को वापस लाता है. साथ ही, चुने जा सकने वाले और टॉगल किए जा सकने वाले प्लैटफ़ॉर्म के साथ काम करने के लिए एक फ़ंक्शन जोड़ता है. (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 में हुए बदलावों को लागू करने के लिए, Card API में किए गए अपडेट (I3c8b9)

वर्शन 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 स्लाइडर क्लास और टोकन (I1ccee) जोड़े गए
  • टैब लागू करने की सुविधा जोड़ी गई है. इस्तेमाल के सैंपल के लिए दस्तावेज़ देखें (Ie0146)

गड़बड़ियां ठीक की गईं

  • TalkBack स्क्रीन रीडर के लीनियर नेविगेशन की वजह से, ऐप्लिकेशन के सबसे ऊपर मौजूद खाली नेविगेशन बार का टाइटल चुनने की समस्या को ठीक किया गया है. (Id4690)
  • IconSize को FloatingActionButtonDefaults में जोड़ा गया. (Ia71cf)
  • LazyColumn के साथ लंबा टेक्स्ट जोड़ने पर, छिपे हुए AlertDialog बटन की गड़बड़ी को ठीक किया गया. (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)
  • फ़्लोटिंग ऐक्शन बटन (एफ़एबी) के लिए, दबाए जाने और फ़ोकस किए जाने पर ऊंचाई में बदलाव करने की सुविधा जोड़ी गई. (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 जोड़ा गया है जो मौजूदा तरीकों के लिए, जटिल लॉजिक के बिना ओवरलोड होते हैं. इससे, उन सभी पैरामीटर के लिए, कंपाइलर से जनरेट की गई मेमोइज़ेशन जांच (बराबर) कम हो जाती है जिन्हें कॉल किए गए इनर फ़ंक्शन में दोहराया जाता है. (I90490)
  • Material 3 डिवाइडर जोड़ा गया. (Ica5fc)
  • एक्सपेरिमेंट के तौर पर उपलब्ध एपीआई एनोटेशन के साथ, चेकबॉक्स और रेडियो बटन को मार्क करें. (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 वर्शन में ये बदलाव शामिल हैं.

गड़बड़ियां ठीक की गईं

  • Material 3 के MaterialTheme में LocalIndication जोड़ें. (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 के स्कैफ़ोल्ड से ड्रॉअर हटाएं. (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 Design 3 और Material You सेक्शन देखें.