हमें यह बताते हुए खुशी हो रही है कि Material 3 Adaptive 1.2.0 अब स्टेबल हो गया है!
यह रिलीज़, पिछले वर्शन के आधार पर तैयार की गई है. इसमें विंडो के साइज़ क्लास के लिए ज़्यादा ब्रेकपॉइंट और डिसप्ले पैन को अपने-आप रखने की नई रणनीतियों के लिए सहायता को बढ़ाया गया है.
Material 3 Adaptive 1.2.0 में नया क्या है
यह स्टेबल रिलीज़, WindowManager 1.5.0 पर आधारित है. यह बड़े और बहुत बड़े ब्रेकपॉइंट के लिए काम करती है. साथ ही, इसमें ListDetailPaneScaffold और SupportingPaneScaffold के लिए, नई रिफ़्लो और लेविटेट रणनीतियां शामिल हैं.
विंडो के साइज़ की नई क्लास: बड़ी और बहुत बड़ी
WindowManager 1.5.0 में, विंडो की चौड़ाई के लिए दो नए ब्रेकपॉइंट जोड़े गए हैं. इनकी मदद से, Expanded विंडो साइज़ क्लास से भी बड़ी विंडो को सपोर्ट किया जा सकता है. बड़े (L) और बहुत बड़े (XL) ब्रेकपॉइंट को चालू किया जा सकता है. इसके लिए, अपने कोड बेस में currentWindowAdaptiveInfo() कॉल में यह पैरामीटर जोड़ें:
currentWindowAdaptiveInfo(supportLargeAndXLargeWidth = true)
इस फ़्लैग की मदद से, लाइब्रेरी ज़रूरत पड़ने पर L और XL ब्रेकपॉइंट भी दिखा सकती है.
अनुकूलन से जुड़ी नई रणनीतियां: रिफ़्लो और लेविटेट
किसी विंडो में कॉन्टेंट और डिसप्ले पैन को व्यवस्थित करना एक मुश्किल काम है. इसके लिए, कई बातों का ध्यान रखना पड़ता है. जैसे, विंडो का साइज़. Material 3 की नई अडैप्टिव लाइब्रेरी की मदद से, दो नई टेक्नोलॉजी का इस्तेमाल करके कम से कम कोशिश में अडैप्टिव लेआउट बनाया जा सकता है.
रीफ़्लो की सुविधा की मदद से, विंडो का साइज़ या आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) बदलने पर, पैन को फिर से व्यवस्थित किया जाता है. जब विंडो का साइज़ काफ़ी बड़ा होता है, तब दूसरे पैन को पहले पैन के बगल में रखा जाता है. वहीं, जब विंडो का साइज़ लंबा होता है, तब दूसरे पैन को पहले पैन के नीचे रखा जाता है. जब विंडो छोटी हो जाती है, तब भी इस तकनीक का इस्तेमाल किया जाता है: कॉन्टेंट नीचे की ओर फिर से व्यवस्थित हो जाता है.
विंडो के साइज़ के हिसाब से पैन को फिर से व्यवस्थित करना
रीफ़्लो की सुविधा कई मामलों में बहुत काम आती है. हालांकि, कुछ ऐसी स्थितियां भी हो सकती हैं जिनमें कॉन्टेंट को विंडो के किसी किनारे पर डॉक करने या उसके ऊपर लेविटेट करने की ज़रूरत पड़ सकती है. लेविटेट रणनीति से न सिर्फ़ कॉन्टेंट को डॉक किया जाता है, बल्कि ड्रैग करने, साइज़ बदलने, और बैकग्राउंड स्क्रिम जैसी सुविधाओं को पसंद के मुताबिक बनाने की अनुमति भी मिलती है.
आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) के आधार पर, किसी पैनल को साइड से सेंटर में ले जाना
फ़्लो और लेविटेट, दोनों रणनीतियों को adaptStrategies पैरामीटर का इस्तेमाल करके, Navigator कंस्ट्रक्टर में एलान किया जा सकता है. साथ ही, दोनों रणनीतियों को सूची की जानकारी और साथ में दिखने वाले पैनल scaffolds पर लागू किया जा सकता है:
val navigator = rememberListDetailPaneScaffoldNavigator<Nothing>( adaptStrategies = ListDetailPaneScaffoldDefaults.adaptStrategies( detailPaneAdaptStrategy = AdaptStrategy.Reflow( reflowUnder = ListDetailPaneScaffoldRole.List ), extraPaneAdaptStrategy = AdaptStrategy.Levitate( alignment = Alignment.Center ) ) )
इन नई अडैप्टिव रणनीतियों का फ़ायदा पाने के तरीके के बारे में ज़्यादा जानने के लिए, GitHub पर Material वेबसाइट और पूरा सैंपल कोड देखें.
-
प्रॉडक्ट से जुड़ी खबरेंGoogle Play पर, लोगों को सुरक्षित ऑनलाइन अनुभव देना और उन्हें नुकसान से बचाना हमारी सबसे बड़ी प्राथमिकता है.
Paul Feng • दो मिनट में पढ़ें -
प्रॉडक्ट से जुड़ी खबरेंआज हम Jetpack Compose 1.0 की रिलीज़ के पांच साल पूरे होने का जश्न मना रहे हैं. हमने 28 जुलाई, 2021 को वर्शन 1.0 लॉन्च किया था. इसके बाद, हमने वर्शन 1.11 लॉन्च किया. इन वर्शन के बीच, हमने एपीआई में कई बड़े बदलाव किए हैं. इसलिए, हम इस मौके पर जश्न मना रहे हैं.
Rebecca Franks, Nick Butcher, Loryn Hairston • पढ़ने में 5 मिनट लगेंगे -
प्रॉडक्ट से जुड़ी खबरेंAndroid Studio Quail 2 अब स्टेबल हो गया है और प्रोडक्शन में इस्तेमाल करने के लिए तैयार है. इससे आपके IDE में बदलाव होगा. इसमें एक साथ कई एजेंटिक वर्कफ़्लो, नेटिव तौर पर इंटिग्रेट की गई मेमोरी लीक प्रोफ़ाइलिंग, और कॉन्टेक्स्ट के हिसाब से क्रैश ठीक करने की सुविधा मिलेगी.
Amman Asfaw • तीन मिनट में पढ़ा जा सकता है
Android डेवलपमेंट से जुड़ी नई अहम जानकारी, हर हफ़्ते अपने इनबॉक्स में पाएं.