Recyclerview
इस टेबल में, androidx.recyclerview ग्रुप में मौजूद सभी आर्टफ़ैक्ट की सूची दी गई है.
| सह-प्रॉडक्ट | स्टेबल रिलीज़ | रिलीज़ कैंडिडेट | बीटा रिलीज़ | ऐल्फ़ा रिलीज़ |
|---|---|---|---|---|
| recyclerview | 1.4.0 | - | - | - |
| recyclerview-selection | 1.2.0 | - | - | 1.3.0-alpha01 |
डिपेंडेंसी का एलान करना
RecyclerView पर डिपेंडेंसी जोड़ने के लिए, आपको अपने प्रोजेक्ट में Google Maven रिपॉज़िटरी जोड़नी होगी. ज़्यादा जानकारी के लिए, Google की Maven रिपॉज़िटरी पढ़ें.
अपने ऐप्लिकेशन या मॉड्यूल के लिए, build.gradle फ़ाइल में उन आर्टफ़ैक्ट की डिपेंडेंसी जोड़ें जिनकी आपको ज़रूरत है:
ग्रूवी
dependencies { implementation "androidx.recyclerview:recyclerview:1.4.0" // For control over item selection of both touch and mouse driven selection implementation "androidx.recyclerview:recyclerview-selection:1.2.0" }
Kotlin
dependencies { implementation("androidx.recyclerview:recyclerview:1.4.0") // For control over item selection of both touch and mouse driven selection implementation("androidx.recyclerview:recyclerview-selection:1.2.0") }
डिपेंडेंसी के बारे में ज़्यादा जानने के लिए, बिल्ड डिपेंडेंसी जोड़ना लेख पढ़ें.
सुझाव/राय दें या शिकायत करें
आपके सुझाव, शिकायत या राय से Jetpack को बेहतर बनाने में मदद मिलती है. अगर आपको कोई नई समस्या मिलती है या आपके पास इस लाइब्रेरी को बेहतर बनाने के लिए सुझाव हैं, तो हमें बताएं. कृपया नई समस्या सबमिट करने से पहले, इस लाइब्रेरी में शामिल मौजूदा समस्याओं को देखें. स्टार बटन पर क्लिक करके, किसी मौजूदा समस्या के लिए वोट किया जा सकता है.
ज़्यादा जानकारी के लिए, Issue Tracker का दस्तावेज़ देखें.
Recyclerview
वर्शन 1.4
वर्शन 1.4.0
15 जनवरी, 2025
androidx.recyclerview:recyclerview:1.4.0 रिलीज़ हो गया है. वर्शन 1.4.0 में ये बदलाव शामिल हैं.
RecyclerView 1.3.2 के बाद हुए अहम बदलाव
Adaptiveरीफ़्रेश रेट की सुविधा:RecyclerViewअबOverScrollerके ज़रिए स्क्रोल करने परsetFrameContentVelocityको कॉल करता है. जैसे, फ़्लिंग या स्मूद स्क्रोल से सेटल होने पर. (I8f8a4)
वर्शन 1.4.0-rc01
18 सितंबर, 2024
androidx.recyclerview:recyclerview:1.4.0-rc01 को रिलीज़ कर दिया गया है. इसमें 1.4.0-alpha02/ के बाद से कोई बदलाव नहीं किया गया है. वर्शन 1.4.0-rc01 में ये बदलाव शामिल हैं.
1.3.2 के बाद हुए बदलाव
काम करने से जुड़ी जानकारी: यह वर्शन, सिर्फ़ API 35 (Vanilla Ice Cream) SDK या इसके बाद के वर्शन के साथ कंपाइल होगा. अपग्रेड करते समय, अगर आपको AGP (Android Gradle प्लगिन) की चेतावनियां दिखती हैं, तो उन्हें खारिज किया जा सकता है.
नई सुविधाएं
Adaptiveरीफ़्रेश रेट की सुविधा:RecyclerViewअबsetFrameContentVelocityको तब कॉल करता है, जबOverScrollerके ज़रिए स्क्रोल किया जा रहा हो. जैसे, फ़्लिंग या स्मूद स्क्रोल से सेटल होने पर. (I8f8a4)
एपीआई में हुए बदलाव
RecyclerView$LayoutManager#isLayoutReversedAPI जोड़ें. (I4970e)
दूसरे बदलाव
- नए प्लैटफ़ॉर्म एपीआई को ऐक्सेस करने के लिए, मैन्युअल तरीके से आउटलाइन बनाने की सुविधा हटा दी गई है. ऐसा इसलिए, क्योंकि AGP 7.3 या इसके बाद के वर्शन (जैसे, R8 वर्शन 3.3) के साथ R8 का इस्तेमाल करने पर, एपीआई मॉडलिंग के ज़रिए यह काम अपने-आप हो जाता है. साथ ही, AGP 8.1 या इसके बाद के वर्शन (जैसे, D8 वर्शन 8.1) का इस्तेमाल करने पर, सभी बिल्ड के लिए यह काम अपने-आप हो जाता है. जो क्लाइंट AGP का इस्तेमाल नहीं कर रहे हैं उन्हें D8 के 8.1 या उसके बाद के वर्शन पर अपडेट करने का सुझाव दिया जाता है. ज़्यादा जानकारी के लिए यह लेख देखें. (Ia60e0, b/345472586)
RecyclerViewबाइंड/ट्रेस सेक्शन बनाने के लिए, आइटम व्यू टाइप जोड़ें. साथ ही, आरवी प्रीफ़ेच को 'फ़ोर्स किया गया - अगले फ़्रेम के लिए ज़रूरी है' के तौर पर लेबल करें. ऐसा तब करें, जब अगले फ़्रेम में उनका इस्तेमाल किया जाना हो. इसलिए, उन्हें जल्द से जल्द काम करना शुरू कर देना चाहिए. (I8ec3e, b/309523615)compileSdkको 35 पर अपडेट करें. ज़्यादा जानकारी के लिए, ऊपर दिया गया "नीति के मुताबिक काम करने के बारे में जानकारी" देखें. 5dc41be
वर्शन 1.4.0-beta01
21 अगस्त, 2024
androidx.recyclerview:recyclerview:1.4.0-beta01 को रिलीज़ कर दिया गया है. इसमें 1.4.0-alpha02 के बाद से कोई बदलाव नहीं किया गया है. वर्शन 1.4.0-beta01 में ये बदलाव शामिल हैं.
काम करने से जुड़ी जानकारी: यह वर्शन, सिर्फ़ API 35 (Vanilla Ice Cream) SDK या इसके बाद के वर्शन के साथ कंपाइल होगा. अपग्रेड करते समय, अगर आपको AGP (Android Gradle प्लगिन) की चेतावनियां दिखती हैं, तो उन्हें खारिज किया जा सकता है.
वर्शन 1.4.0-alpha02
7 अगस्त, 2024
androidx.recyclerview:recyclerview:1.4.0-alpha02 रिलीज़ हो गया है. वर्शन 1.4.0-alpha02 में ये बदलाव शामिल हैं.
काम करने से जुड़ी जानकारी: यह वर्शन, सिर्फ़ API 35 (Vanilla Ice Cream) SDK या इसके बाद के वर्शन के साथ कंपाइल होगा. अपग्रेड करते समय, अगर आपको AGP (Android Gradle प्लगिन) की चेतावनियां दिखती हैं, तो उन्हें खारिज किया जा सकता है.
नई सुविधाएं
- अलग-अलग रिफ़्रेश रेट के लिए सहायता: RecyclerView अब OverScroller के ज़रिए स्क्रोल करने पर
setFrameContentVelocityको कॉल करता है. जैसे, फ़्लिंग या स्मूथ स्क्रोल से सेटल होने पर. (I8f8a4)
एपीआई में हुए बदलाव
- बंद किए गए
ViewCompat.LAYOUT_DIRECTION_एपीआई (I51710, b/317055535) RecyclerView$LayoutManager#isLayoutReversedAPI जोड़ें. (I4970e)
दूसरे बदलाव
- नए प्लैटफ़ॉर्म एपीआई को ऐक्सेस करने के लिए, मैन्युअल तरीके से आउटलाइन बनाने की सुविधा हटा दी गई है. ऐसा इसलिए, क्योंकि AGP 7.3 या इसके बाद के वर्शन (जैसे, R8 वर्शन 3.3) के साथ R8 का इस्तेमाल करने पर, एपीआई मॉडलिंग के ज़रिए यह काम अपने-आप हो जाता है. साथ ही, AGP 8.1 या इसके बाद के वर्शन (जैसे, D8 वर्शन 8.1) का इस्तेमाल करने पर, सभी बिल्ड के लिए यह काम अपने-आप हो जाता है. जो क्लाइंट AGP का इस्तेमाल नहीं कर रहे हैं उन्हें D8 के 8.1 या उसके बाद के वर्शन पर अपडेट करने का सुझाव दिया जाता है. ज़्यादा जानकारी के लिए यह लेख देखें. (Ia60e0, b/345472586)
RecyclerViewबाइंड/ट्रेस सेक्शन बनाने के लिए, आइटम व्यू टाइप जोड़ें. साथ ही, आरवी प्रीफ़ेच को 'फ़ोर्स किया गया - अगले फ़्रेम के लिए ज़रूरी है' के तौर पर लेबल करें. ऐसा तब करें, जब अगले फ़्रेम में उनका इस्तेमाल किया जाना हो. इसलिए, उन्हें जल्द से जल्द काम करना शुरू कर देना चाहिए. (I8ec3e, b/309523615)compileSdkको 35 पर अपडेट करें. ज़्यादा जानकारी के लिए, ऊपर दिया गया "नीति के मुताबिक काम करने के बारे में जानकारी" देखें. 5dc41be
बाहरी योगदान
GestureDetectorCompatअब काम नहीं करता, क्योंकिGestureDetector,minSdkसे उपलब्ध है. (Icc4cd)
वर्शन 1.4.0-alpha01
18 अक्टूबर, 2023
androidx.recyclerview:recyclerview:1.4.0-alpha01 रिलीज़ हो गया है. वर्शन 1.4.0-alpha01 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
RecyclerView$LayoutManager#isLayoutReversedAPI जोड़ें. (I4970e)
गड़बड़ियां ठीक की गईं
- ऐनिमेशन के दौरान कभी-कभी क्रैश होने वाली गड़बड़ी को ठीक किया गया (I42f22b) (यह 1.3.2 में भी शामिल है)
वर्शन 1.3
वर्शन 1.3.2
18 अक्टूबर, 2023
androidx.recyclerview:recyclerview:1.3.2 रिलीज़ हो गया है. वर्शन 1.3.2 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- ऐनिमेशन के दौरान कभी-कभी क्रैश होने वाली गड़बड़ी को ठीक किया गया है. (I42f22b)
वर्शन 1.3.1
26 जुलाई, 2023
androidx.recyclerview:recyclerview:1.3.1 को रिलीज़ कर दिया गया है. इसमें 1.3.1-rc01 के बाद से कोई बदलाव नहीं किया गया है. वर्शन 1.3.1 में ये बदलाव शामिल हैं.
पिछली रिलीज़ के रिलीज़ नोट के लिए, रिलीज़ नोट पेज पर जाएं
वर्शन 1.3.1-rc01
24 मई, 2023
androidx.recyclerview:recyclerview:1.3.1-rc01 रिलीज़ हो गया है. वर्शन 1.3.1-rc01 में ये बदलाव शामिल हैं.
ViewPager2 का इस्तेमाल करने वाले लोगों को, RecyclerView के इस वर्शन पर अपडेट करते समय, कम से कम 1.1.0-beta02 वर्शन पर अपडेट करना होगा, ताकि ऐप्लिकेशन क्रैश न हो.
एपीआई में हुए बदलाव
- ऐप्लिकेशन में
RecyclerViewसे जुड़ी समस्याओं को डीबग करने में मदद करने वाले नएsetDebugAssertionsEnabledऔरsetVerboseLoggingEnabledतरीके जोड़े गए हैं. (I514b9)
गड़बड़ियां ठीक की गईं
onBindको कॉल करते समय, कुछ समय के लिए अलग किए गए व्यू को फिर से अटैच करके,ViewTreeLifecycleOwner(इसमेंComposeViewभी शामिल है) का इस्तेमाल करने वाले लोगों के लिए क्रैश की समस्या ठीक की गई. (I7244f2c, b/265347515, b/283288295)
वर्शन 1.3.0
8 मार्च, 2023
androidx.recyclerview:recyclerview:1.3.0 को रिलीज़ कर दिया गया है. इसमें 1.3.0-rc01 के बाद से कोई बदलाव नहीं किया गया है. वर्शन 1.3.0 में ये बदलाव शामिल हैं.
1.2.0 के बाद हुए ज़रूरी बदलाव
- इस रिलीज़ में, Jetpack Compose के साथ इस्तेमाल करने पर परफ़ॉर्मेंस में सुधार किया गया है. यह सुधार, 1.3.0-alpha02 और 1.3.0-beta01 में पहले ही शामिल किया जा चुका है. अगर Compose
1.2.0-beta02या इसके बाद के वर्शन का इस्तेमाल किया जा रहा है और आपने इंटरऑपरेबिलिटी से जुड़े पिछले दिशा-निर्देशों में बताए गएMyComposeAdapterऔरDisposeOnViewTreeLifecycleDestroyedViewCompositionStrategyका इस्तेमाल किया था, तो आपको इन्हें हटा देना चाहिए. ऐसा इसलिए, क्योंकि अब ये डिफ़ॉल्ट स्थिति से बेहतर नहीं हैं. - नया
ConcatAdapter.getWrappedAdapterAndPositionतरीका जोड़ा गया है. इससे उन स्थितियों में रैप्ड अडैप्टर की जानकारी वापस पाने में मदद मिलती है जब आपके पासViewHolderनहीं होता, जैसे किSpanSizeLookup(I2bd4c, b/191543920)
वर्शन 1.3.0-rc01
21 सितंबर, 2022
androidx.recyclerview:recyclerview:1.3.0-rc01 रिलीज़ हो गया है. वर्शन 1.3.0-rc01 में ये बदलाव शामिल हैं.
- पिछली रिलीज़ के बाद से कोई बदलाव नहीं किया गया है
वर्शन 1.3.0-beta02
10 अगस्त, 2022
androidx.recyclerview:recyclerview:1.3.0-beta02 रिलीज़ हो गया है. वर्शन 1.3.0-beta02 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- 1.3.0-beta01 में जोड़े गए, नल वैल्यू स्वीकार करने की सुविधा से जुड़े एनोटेशन हटा दिए गए हैं. इसकी वजह यह है कि ये Kotlin का इस्तेमाल करने वाले लोगों के लिए, सोर्स के साथ काम न करने वाले बदलावों को दिखाते हैं (I7a258,I1557e6,I8db76)
वर्शन 1.3.0-beta01
29 जून, 2022
androidx.recyclerview:recyclerview:1.3.0-beta01 रिलीज़ हो गया है. वर्शन 1.3.0-beta01 में ये बदलाव शामिल हैं.
नई सुविधाएं
- इस बीटा रिलीज़ में परफ़ॉर्मेंस को बेहतर बनाया गया है. Jetpack Compose के साथ इस्तेमाल करने पर, यह सुविधा पहले 1.3.0-alpha02 में शामिल थी. अगर Compose
1.2.0-beta02या इसके बाद के वर्शन का इस्तेमाल किया जा रहा है और आपने इंटरऑपरेबिलिटी से जुड़े पिछले दिशा-निर्देशों में बताए गएMyComposeAdapterऔरDisposeOnViewTreeLifecycleDestroyedViewCompositionStrategyका इस्तेमाल किया था, तो आपको इन्हें हटा देना चाहिए. ऐसा इसलिए, क्योंकि अब ये डिफ़ॉल्ट स्थिति से बेहतर नहीं हैं.
एपीआई में हुए बदलाव
- Java का इस्तेमाल करने वाले लोगों के लिए लिंट की चेतावनियों को बेहतर बनाने और Kotlin का इस्तेमाल करने वाले लोगों के लिए इंटरऑपरेबिलिटी को बेहतर बनाने के लिए, कई तरीकों और पैरामीटर के लिए, शून्यता एनोटेशन जोड़े गए हैं. यह बदलाव, Kotlin का इस्तेमाल करने वाले कुछ लोगों के लिए सोर्स-ब्रेकिंग बदलाव हो सकता है. साथ ही, इससे Java का इस्तेमाल करने वाले कुछ लोगों को लिंट की अतिरिक्त चेतावनियां/गड़बड़ियां मिल सकती हैं. (I61829, b/236487044; Ia0b6f; I6f119, b/236487209; Ibe1de, b/236487210)
गड़बड़ियां ठीक की गईं
- पक्का करें कि a11y सेवाओं के ज़रिए ग्रिड को ग्रिड के तौर पर माना जाए. इसके लिए, a11y नोड की जानकारी वाले क्लास का नाम सेट करें. (I12812)
वर्शन 1.3.0-alpha02
6 अप्रैल, 2022
androidx.recyclerview:recyclerview:1.3.0-alpha02 रिलीज़ हो गया है. वर्शन 1.3.0-alpha02 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- आने वाले समय में उपलब्ध होने वाले एसडीके के लिए, एक्सपेरिमेंट के तौर पर
BuildCompatतरीके जोड़े गए (Iafd82, b/207528937) - नया
ConcatAdapter.getWrappedAdapterAndPositionतरीका जोड़ा गया है. इससे, रैप किए गए अडैप्टर की जानकारी उन स्थितियों में भी वापस पाई जा सकती है जब आपके पास ViewHolder नहीं होता. जैसे,SpanSizeLookup(I2bd4c, b/191543920)
गड़बड़ियां ठीक की गईं
- AndroidX PoolingContainer लाइब्रेरी (Ib89d2) के साथ इंटिग्रेशन
- यह कुकी, सुलभता से जुड़ी कार्रवाई (If74ae) के लिए स्क्रोल करने की दूरी को अडजस्ट करती है
वर्शन 1.3.0-alpha01
15 सितंबर, 2021
androidx.recyclerview:recyclerview:1.3.0-alpha01 रिलीज़ हो गया है. वर्शन 1.3.0-alpha01 में ये बदलाव शामिल हैं.
नई सुविधाएं
- RecyclerView में स्ट्रेच ओवरस्क्रोल की सुविधा जोड़ी गई. (Iab877)
वर्शन 1.2
वर्शन 1.2.1
2 जून, 2021
androidx.recyclerview:recyclerview:1.2.1 रिलीज़ हो गया है. वर्शन 1.2.1 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
ConcatAdapterमें मौजूदViewHolderअबonViewRecycledकॉलबैक में क्वेरी किए जाने पर, अडैप्टर की सही पोज़िशन दिखाते हैं. (b/187339376)
वर्शन 1.2.0
7 अप्रैल, 2021
androidx.recyclerview:recyclerview:1.2.0 रिलीज़ हो गया है. वर्शन 1.2.0 में ये बदलाव शामिल हैं.
1.1.0 के बाद के मुख्य बदलाव
ConcatAdapter: इस नए अडैप्टर की मदद से, एक ही RecyclerView पर कई अडैप्टर को आसानी से जोड़ा जा सकता है. ज़्यादा जानकारी के लिए, ब्लॉग पोस्ट देखें.
- इस बदलाव के तहत,
ViewHolder.getAdapterPositionके इस्तेमाल पर रोक लगा दी गई है. इसकी जगह दो नए तरीकों का इस्तेमाल किया जाएगा:- getBindingAdapterPosition, अडैप्टर के हिसाब से उस आइटम की पोज़िशन दिखाता है जिसने उस आइटम को बाइंड किया है.
- getAbsoluteAdapterPosition, RecyclerView में आइटम की पोज़िशन दिखाता है.
लेज़ी स्टेट रीस्टोरेशन: RecyclerView Adapter अब कॉन्टेंट लोड होने तक, स्टेट रीस्टोरेशन में देरी कर सकता है. ज़्यादा जानकारी के लिए, दस्तावेज़ देखें.
वर्शन 1.2.0-rc01
24 मार्च, 2021
androidx.recyclerview:recyclerview:1.2.0-rc01 रिलीज़ हो गया है. वर्शन 1.2.0-rc01 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
ConcatAdapter.Config.Builderमें अब डिफ़ॉल्ट वैल्यू हैं, जोConfig.DEFAULT(b/157169835) से मेल खाती हैं
वर्शन 1.2.0-beta02
24 फ़रवरी, 2021
androidx.recyclerview:recyclerview:1.2.0-beta02 रिलीज़ हो गया है. वर्शन 1.2.0-beta02 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- इस समस्या को ठीक किया गया है. इसमें टॉप पैडिंग की वजह से, राइट ओवरस्क्रोल ग्लो, पैडिंग का पालन करने के लिए नीचे की ओर जाने के बजाय, ऊपर की ओर पैडिंग वाले हिस्से में चला जाता था. (I6b61d, b/118399122)
वर्शन 1.2.0-beta01
2 दिसंबर, 2020
androidx.recyclerview:recyclerview:1.2.0-beta01 को 1.2.0-alpha06 के बाद से बिना किसी बदलाव के रिलीज़ किया गया है. वर्शन 1.2.0-beta01 में ये बदलाव शामिल हैं.
वर्शन 1.2.0-alpha06
1 अक्टूबर, 2020
androidx.recyclerview:recyclerview:1.2.0-alpha06 रिलीज़ हो गया है. वर्शन 1.2.0-alpha06 में ये बदलाव शामिल हैं.
नई सुविधाएं
- कई RecyclerListener जोड़ने की सुविधा जोड़ी गई. (I70ad8, b/145767095)
एपीआई में हुए बदलाव
- RecyclerView.setRecyclerListener(RecyclerListener) का इस्तेमाल अब नहीं किया जा सकता. (I70ad8, b/145767095)
वर्शन 1.2.0-alpha05
22 जुलाई, 2020
androidx.recyclerview:recyclerview:1.2.0-alpha05 रिलीज़ हो गया है. वर्शन 1.2.0-alpha05 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- उस समस्या को ठीक किया गया है जिसमें अगर RecyclerView में सिर्फ़ एक आइटम है और उस पर फ़ोकस किया गया है, तो आगे या पीछे फ़ोकस करने पर फ़ोकस नहीं बदलेगा. (6f36b3)
StaggeredGridLayoutManagerमें मौजूदArrayIndexOutOfBoundsExceptionको ठीक किया गया (49b601, b/122303625, b/74877618, b/160193663, b/37086625)- मेज़रमेंट से जुड़ी गड़बड़ी को ठीक किया गया है. इसमें कुछ खास मामलों में, RecyclerView अपने चाइल्ड आइटम नहीं दिखाता था. (89040c, b/138734786)
बाहरी योगदान
- Facebook की ओर से, योगदान देने के लिए Kolin Krewinkel को धन्यवाद!
वर्शन 1.2.0-alpha04
24 जून, 2020
androidx.recyclerview:recyclerview:1.2.0-alpha04 रिलीज़ हो गया है. वर्शन 1.2.0-alpha04 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
MergeAdapterका नाम बदलकरConcatAdapterकर दिया गया है, ताकि डेटा मर्ज करने के अलग-अलग तरीकों (c0540c, b/158019211) के बारे में कोई भ्रम न हो.
गड़बड़ियां ठीक की गईं
- जब दिखने वाले सभी आइटम हटा दिए जाते हैं, तब अपने-आप स्क्रोल होने की सुविधा में सुधार किया गया है (fe8670, b/154124815)
वर्शन 1.2.0-alpha03
29 अप्रैल, 2020
androidx.recyclerview:recyclerview:1.2.0-alpha03 रिलीज़ हो गया है. वर्शन 1.2.0-alpha03 में ये बदलाव शामिल हैं.
नई सुविधाएं
- RecyclerView में अब एक
nestedScrollByतरीका है. इससे प्रोग्राम के हिसाब से स्क्रोल किया जा सकता है. यह नेस्ट किए गए स्क्रोलिंग के साथ काम करता है: (Ibaa58)
वर्शन 1.2.0-alpha02
1 अप्रैल, 2020
androidx.recyclerview:recyclerview:1.2.0-alpha02 रिलीज़ हो गया है. वर्शन 1.2.0-alpha02 में ये बदलाव शामिल हैं.
RecyclerView के इस और इसके बाद के वर्शन, ViewPager2 के पुराने वर्शन के साथ काम नहीं करते. अगर फ़िलहाल androidx.viewpager2:viewpager2:1.0.0 या इससे कम वर्शन का इस्तेमाल किया जा रहा है, तो androidx.viewpager2:viewpager2:1.1.0-alpha01 पर अपडेट करें.
नई सुविधाएं
MergeAdapter
- MergeAdapter: यह एक नया RecyclerView अडैप्टर है. यह कई अडैप्टर को एक साथ जोड़ सकता है.
MyAdapter adapter1 = ...; AnotherAdapter adapter2 = ...; MergeAdapter merged = new MergeAdapter(adapter1, adapter2); recyclerView.setAdapter(mergedAdapter);ऊपर दिए गए उदाहरण के लिए, MergeAdapter,
adapter1से आइटम दिखाएगा. इसके बाद,adapter2से आइटम दिखाएगा.RecyclerView.Adapterलेज़ी स्टेट रीस्टोरेशन:RecyclerView.Adapterक्लास में एक नया एपीआई जोड़ा गया है. इसकी मदद से अडैप्टर यह कंट्रोल कर सकता है कि लेआउट की स्थिति कब वापस लाई जानी चाहिए.उदाहरण के लिए, इन नंबरों पर कॉल किया जा सकता है:
myAdapter.setStateRestorationStrategy(StateRestorationStrategy.WHEN_NOT_EMPTY);ताकि RecyclerView, स्क्रोल की पोज़िशन को तब तक सेव न करे, जब तक अडैप्टर में डेटा मौजूद न हो.
CollectionInfo और CollectionItemInfo अब डिफ़ॉल्ट रूप से नहीं भरे जाएंगे.
अगर आपको Accessibility Services (जैसे, Talkback) को उपयोगकर्ता के लिए, गिनती और आइटम इंडेक्स की जानकारी देना जारी रखना है, तो आपको CollectionInfo और CollectionItemInfo को खुद भरना होगा.
ये ऑब्जेक्ट अब फ़्रेमवर्क में नहीं दिखते, क्योंकि फ़्रेमवर्क यह तय नहीं कर सकता कि उपयोगकर्ता को कितने आइटम दिख रहे हैं. जैसे, सेपरेटर, हेडर या RecyclerView आइटम, जो कई आइटम दिखाते हैं.
गड़बड़ियां ठीक की गईं
- व्यूपोर्ट का साइज़ बदलने पर, RecyclerView अब व्यूपोर्ट से बाहर मौजूद व्यू पर ऐंकर करने से बचता है
- DiffUtil में मौजूद एक गड़बड़ी को ठीक किया गया है. इस गड़बड़ी की वजह से, पहली सूची में मौजूद किसी ओरिजनल आइटम को दूसरी सूची में कई बार डुप्लीकेट करने पर, अंतर की गलत गिनती हो सकती थी. (b/123376278)
वर्शन 1.2.0-alpha01
18 दिसंबर, 2019
androidx.recyclerview:recyclerview:1.2.0-alpha01 रिलीज़ हो गया है. वर्शन 1.2.0-alpha01 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- तेज़ी से स्क्रोल करने की सुविधा से जुड़ी कुछ छोटी-मोटी समस्याओं को ठीक किया गया है. ये समस्याएं, आरटीएल ड्राइंग और टच की सटीक जानकारी से जुड़ी हैं (b/143789932, aosp/1130438)
- ItemTouchHelper में क्रैश होने की समस्या ठीक की गई. यह समस्या तब होती थी, जब ItemTouchHelper के ऐनिमेशन चालू होने के दौरान RecyclerView से ItemTouchHelper को हटाया जाता था (b/140447176, aosp/1167575)
वर्शन 1.1
वर्शन 1.1.0
20 नवंबर, 2019
androidx.recyclerview:recyclerview:1.1.0 रिलीज़ हो गया है. वर्शन 1.1.0 में ये बदलाव शामिल हैं.
1.0.0 के बाद हुए अहम बदलाव
PagerSnapHelperऔरLinearSnapHelperअब RecyclerView के पैडिंग को ध्यान में रखते हैं. इससे कोई फ़र्क़ नहीं पड़ता किclipToPaddingकी वैल्यू क्या है (b/139452422, b/139012032, aosp/1103182, aosp/1106715, aosp/1130728)RecyclerView.setLayoutTransition(LayoutTransition)को आधिकारिक तौर पर बंद कर दिया गया है. इसे शून्य से अलग वैल्यू के साथ कॉल करने पर,IllegalArgumentExceptionदिखेगा. इसके बजाय,RecyclerView.setItemAnimator(ItemAnimator)का इस्तेमाल करें. (aosp/839414)- aosp/723649: RecyclerView अब
NestedScrollingChild3लागू करता है. इससे इसे यह पता चल पाता है कि नेस्ट किए गए सभी स्क्रोलिंग पैरंट नेस्ट की गई स्क्रोलिंग की दूरी का इस्तेमाल कब बंद कर देते हैं. अगर डेवलपर कोड, फ़िलहालRecyclerView.onNestedScroll(View, int, int, int, int, int)को बदलता है, तो हो सकता है कि अब इसे कॉल न किया जाए. इसके बजाय,RecyclerView.onNestedScroll(View, int, int, int, int, int, int[])को बदला जाना चाहिए. - RecyclerView में अब डिफ़ॉल्ट स्टाइल एट्रिब्यूट:
recyclerViewStyleहै. इसकी मदद से, अपनी थीम में डिफ़ॉल्ट स्टाइल सेट की जा सकती है - ViewCompat accessibility actions API अब RecyclerView ItemDelegate को नहीं तोड़ता है.
LinearLayoutManager.calculateExtraLayoutSpace(RecyclerView.State, int[])को बदला जा सकता है, ताकि यह तय किया जा सके कि RecyclerView के दोनों ओर कितना अतिरिक्त लेआउट स्पेस जोड़ा जाना चाहिए. (aosp/931259)- smoothScrollBy का नया ओवरलोड जोड़ा गया है:
RecyclerView#smoothScrollBy(@Px int, @Px int, @Nullable Interpolator, int duration). इससे यह तय किया जा सकता है कि ऐनिमेशन कितने मिलीसेकंड तक चलना चाहिए. (aosp/952807)
वर्शन 1.1.0-rc01
23 अक्टूबर, 2019
androidx.recyclerview:recyclerview:1.1.0-rc01 रिलीज़ हो गया है. वर्शन 1.1.0-rc01 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
RecyclerViewAccessibilityDelegate.ItemDelegateको ओवरराइड करते समय, "ऐप्लिकेशन काम नहीं कर रहा" समस्या को ठीक किया गया है (aosp/1138057, aosp/1133434)
वर्शन 1.1.0-beta05
9 अक्टूबर, 2019
androidx.recyclerview:recyclerview:1.1.0-beta05 रिलीज़ हो गया है. वर्शन 1.1.0-beta05 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- aosp/1106715 और aosp/1103182 को फ़ॉलो करते हुए, अब LinearSnapHelper और PagerSnapHelper, RecyclerView की सीमाओं के बीच मौजूद व्यू को दिखाएंगे. इसमें पैडिंग शामिल नहीं होगी. भले ही, clipToPadding की वैल्यू कुछ भी हो. (aosp/1130728)
गड़बड़ियां ठीक की गईं
- उस समस्या को ठीक किया गया है जिसमें RecyclerView, RecyclerView के बच्चों के लिए डुप्लीकेट ऐक्सेसिबिलिटी नोड जनरेट कर रहा था. (aosp/1130618)
- उस समस्या को ठीक कर दिया गया है जिसकी वजह से RecyclerViews में वर्चुअल ऐक्सेसिबिलिटी हैरारकी काम नहीं करती थी.
- उस समस्या को ठीक किया गया है जिसमें कस्टम ItemDelegate का इस्तेमाल नहीं किया जाता था.
वर्शन 1.1.0-beta04
5 सितंबर, 2019
androidx.recyclerview:recyclerview:1.1.0-beta04 रिलीज़ हो गया है. इस वर्शन में शामिल बदलाव यहां देखे जा सकते हैं.
गड़बड़ियां ठीक की गईं
PagerSnapHelperऔरLinearSnapHelperअब RecyclerView के पैडिंग को ध्यान में रखते हैं. भले ही,clipToPaddingकी वैल्यू कुछ भी हो (b/139452422, b/139012032, aosp/1103182, aosp/1106715)- उस गड़बड़ी को ठीक किया गया है जिसमें नेस्ट किए गए प्री-स्क्रॉलिंग की वजह से,
NestedScrollingParentस्क्रोल होने पर RecyclerView, टच इंटरसेप्ट की अनुमति नहीं देता था (b/138668210, aosp/1105373). इससे ViewPager2 जैसी लाइब्रेरी को फ़ायदा मिलता है. - RecyclerView अब नेस्ट किए गए प्री स्क्रोल भेजे जाने से पहले, हमेशा
SCROLL_STATE_DRAGGINGपर जाता है (aosp/1105373) - अब नेस्ट किए गए प्री-स्क्रोलिंग को तब तक नहीं किया जाता, जब तक कि जेस्चर, टच स्लोप से ज़्यादा न हो जाए (b/139530818, aosp/1105373)
- जब RecyclerView उस दिशा में स्क्रोल नहीं कर पाता है जिसमें नेस्ट किए गए प्री-स्क्रोल को
dxऔरdyआर्ग्युमेंट भेजे जाते हैं, तब उन्हें शून्य कर दिया जाता है (aosp/1105373)
वर्शन 1.1.0-beta03
15 अगस्त, 2019
androidx.recyclerview:recyclerview:1.1.0-beta03 रिलीज़ हो गया है. इस वर्शन में शामिल बदलाव यहां देखे जा सकते हैं.
एपीआई में हुए बदलाव
- RecyclerView अब
View.onScrollChanged(int l, int t, int oldl, int oldt)के ज़रिए स्क्रोल की दूरी भेजता है, ताकि सुलभता सेवाएं स्क्रोल में हुए बदलावों के बारे में सटीक सूचना पा सकें. (aosp/1007823)
गड़बड़ियां ठीक की गईं
- RecyclerView और ऐक्सेसिबिलिटी से जुड़ी स्टैक ओवरफ़्लो की एक बड़ी गड़बड़ी को ठीक किया गया. (aosp/1099577)
वर्शन 1.1.0-beta02
7 अगस्त, 2019
androidx.recyclerview:recyclerview:1.1.0-beta02 रिलीज़ हो गया है. इस वर्शन में शामिल बदलाव यहां देखे जा सकते हैं.
नई सुविधाएं
- RecyclerView में अब डिफ़ॉल्ट स्टाइल एट्रिब्यूट:
recyclerViewStyleहै. इसकी मदद से, अपनी थीम में डिफ़ॉल्ट स्टाइल सेट की जा सकती है
गड़बड़ियां ठीक की गईं
- RecyclerView में स्क्रोल करते समय, टच इंटरसेप्ट की अनुमति न देने वाली गड़बड़ी को ठीक किया गया है. इसकी वजह से, NestedScrollingParent स्क्रोल हो रहा था. (b/131115697, aosp/1055911)
वर्शन 1.1.0-beta01
2 जुलाई, 2019
androidx.recyclerview:recyclerview:1.1.0-beta01 रिलीज़ हो गया है. इस वर्शन में शामिल बदलाव यहां देखे जा सकते हैं.
नई सुविधाएं
RecyclerViewअब सुलभता से जुड़े इवेंट के ज़रिए स्क्रोल शुरू होने पर, नेस्टेड स्क्रोलिंग में हिस्सा लेता है. (aosp/973584)
वर्शन 1.1.0-alpha06
5 जून, 2019
androidx.recyclerview:recyclerview:1.1.0-alpha06 और androidx.recyclerview:recyclerview-selection:1.1.0-alpha06 रिलीज़ हो गए हैं. इस वर्शन में शामिल बदलाव यहां देखे जा सकते हैं.
नई सुविधाएं
- smoothScrollBy का नया ओवरलोड जोड़ा गया है:
RecyclerView#smoothScrollBy(@Px int, @Px int, @Nullable Interpolator, int duration). इससे यह तय किया जा सकता है कि ऐनिमेशन कितने मिलीसेकंड तक चलना चाहिए. (aosp/952807)
एपीआई में हुए बदलाव
GridLayoutManagerऔरStaggeredGridLayoutManagerअब सुलभता के लिए, पूरे स्पैन वाले आइटम को हेडर के तौर पर अपने-आप लेबल नहीं करते (aosp/969703)recyclerview-selection(aosp/937279) में, चुनने के क्रम (बनाने के समय के हिसाब से) को बनाए रखें
गड़बड़ियां ठीक की गईं
- स्क्रोल करने की नेस्ट की गई स्थिति में,
RecyclerViewके गलत वेलोसिटी के साथ फ़्लिंग होने की गड़बड़ी को ठीक किया गया है. (aosp/961642) recyclerview-selectionमें स्थिरता से जुड़े सुधार किए गए (aosp/960213, aosp/926296)
वर्शन 1.1.0-alpha05
7 मई, 2019
androidx.recyclerview:recyclerview:1.1.0-alpha05 और androidx.recyclerview:recyclerview-selection:1.1.0-alpha05 रिलीज़ हो गए हैं. इस वर्शन में शामिल बदलाव यहां देखे जा सकते हैं.
नई सुविधाएं
LinearLayoutManager.calculateExtraLayoutSpace(RecyclerView.State, int[])को बदला जा सकता है, ताकि यह तय किया जा सके कि RecyclerView के दोनों ओर कितना अतिरिक्त लेआउट स्पेस जोड़ा जाना चाहिए. (aosp/931259)
एपीआई में हुए बदलाव
DividerItemDecorationड्रॉएबल को वापस पाने के लिए एपीआई जोड़ा गया (aosp/937282)LinearLayout.getExtraLayoutSpace(RecyclerVew.State)को बंद कर दिया गया है. इसके बजाय, एक नया तरीका उपलब्ध कराया गया है. इससे दोनों साइड पर कस्टम एक्स्ट्रा लेआउट स्पेस मिल सकता है. नया तरीकाLinearLayout.calculateExtraLayoutSpace(RecyclerView.state, int[])(aosp/931259) है
गड़बड़ियां ठीक की गईं
- जेस्चर से चुनने की सुविधा को बेहतर बनाया गया (aosp/940781)
- चुने गए आइटम को बनाने के समय के हिसाब से क्रम में रखें (b/128455535)
वर्शन 1.1.0-alpha04
3 अप्रैल, 2019
androidx.recyclerview:recyclerview:1.1.0-alpha04 रिलीज़ हो गया है. इस वर्शन में शामिल बदलाव यहां देखे जा सकते हैं.
गड़बड़ियां ठीक की गईं
- RV OnItemTouchListener, पहले ACTION_UP को इंटरसेप्ट नहीं कर पाता था. इससे OnItemTouchListener, ACTION_UP का जवाब देने से अन्य कोड को नहीं रोक पाता था. इस समस्या को अब ठीक कर दिया गया है: (aosp/916137)
वर्शन 1.1.0-alpha03
13 मार्च, 2019
androidx.recyclerview:recyclerview:1.1.0-alpha03 रिलीज़ हो गया है. इस वर्शन में शामिल सभी बदलाव की पूरी सूची यहां देखी जा सकती है.
नई सुविधाएं
GridLayoutManager: ऑप्ट इन करें, ज़्यादा रिज़ॉल्यूशन वालाGridLayoutManagerस्क्रोल बार डाइमेंशन का अनुमान (aosp/838836):- इस कुकी का इस्तेमाल, स्पैन की जानकारी का इस्तेमाल करके
GridLayoutManagerके लिए स्क्रोल बार के डाइमेंशन का अनुमान लगाने के लिए किया जाता है. - इसे चालू करने के लिए,
GridLayoutManager#setUsingSpansToEstimateScrollbarDimensions(boolean)को true के तौर पर पास करें. - ज़्यादा जानकारी के लिए,
GridLayoutManager#setUsingSpansToEstimateScrollbarDimensions(boolean)पर दिया गया दस्तावेज़ देखें.
- इस कुकी का इस्तेमाल, स्पैन की जानकारी का इस्तेमाल करके
गड़बड़ियां ठीक की गईं
- सुलभता: एक बग था. इसमें ViewHolder को रीसाइकल करने और फिर से बाइंड करने के बाद, RecyclerView के
RecyclerViewAccessibilityDelegateसे जुड़ा ItemDelegate, ViewHolder के itemView से नहीं जुड़ रहा था. इससे सुलभता की सुविधा काम नहीं कर रही थी. अब इस समस्या को ठीक कर दिया गया है (aosp/917740).
वर्शन 1.1.0-alpha02
30 जनवरी, 2019
androidx.recyclerview:recyclerview 1.1.0-alpha02 रिलीज़ हो गया है.
एपीआई में हुए बदलाव
RecyclerView.setLayoutFrozen(boolean)औरRecyclerView.isLayoutFrozen()की जगह अबRecyclerView.suppressLayout(boolean)औरRecyclerView.isLayoutSuppressed()का इस्तेमाल किया जाता है. (aosp/839414)RecyclerView.setLayoutTransition(LayoutTransition)को आधिकारिक तौर पर बंद कर दिया गया है. इसे शून्य से अलग वैल्यू के साथ कॉल करने पर,IllegalArgumentExceptionदिखेगा. (aosp/839414)
गड़बड़ियां ठीक की गईं
- RV में मौजूद उस गड़बड़ी को ठीक किया गया है जिसमें
SmoothScrollerकभी बंद नहीं होता (aosp/843741) - उस गड़बड़ी को ठीक किया गया है जिसमें स्क्रोलिंग ऐनिमेशन के आखिर में
SCROLL_STATE_IDLEको कॉल नहीं किया जा सकता था. (aosp/812576)
वर्शन 1.1.0-alpha01
3 दिसंबर, 2018
androidx.recyclerview 1.1.0-alpha01 और androidx.recyclerview-selection 1.1.0-alpha01 रिलीज़ हो गए हैं.
androidx.recyclerview 1.1.0-alpha01
एपीआई में हुए बदलाव
- aosp/723649: RecyclerView अब
NestedScrollingChild3लागू करता है. इससे इसे यह पता चल पाता है कि नेस्ट किए गए सभी स्क्रोलिंग पैरंट नेस्ट की गई स्क्रोलिंग की दूरी का इस्तेमाल कब बंद कर देते हैं. अगर डेवलपर कोड, फ़िलहालRecyclerView.onNestedScroll(View, int, int, int, int, int)को बदलता है, तो हो सकता है कि अब इसे कॉल न किया जाए. इसके बजाय,RecyclerView.onNestedScroll(View, int, int, int, int, int, int[])को बदला जाना चाहिए.
गड़बड़ियां ठीक की गईं
TransitionManagerमें किसी आइटम को छोटा/बड़ा करने के लिएRecyclerViewका इस्तेमाल करते समय होने वाली क्रैश की समस्या को ठीक किया गया है (b/37129527).- उस गड़बड़ी को ठीक किया गया है जिसमें
RecyclerView.OnItemTouchListenerका व्यवहार, व्यू सिस्टम केonInterceptTouchEventऔरonTouchEventके व्यवहार से अलग था (aosp/721235) - स्मूद स्क्रोलिंग से जुड़े कुछ बग ठीक किए गए हैं (aosp/729718, aosp/747168, aosp/812576)
PagerSnapHelperमें स्नैप करने की रणनीति को ठीक किया गया है, ताकि बच्चों के लिए उपलब्ध न होने वाले व्यू को मैनेज किया जा सके (aosp/795752)
androidx.recyclerview-selection 1.1.0-alpha01
गड़बड़ियां ठीक की गईं
- डेटा सेट बदलने पर, सिलेक्शन हटाने पर दिखने वाली
ConcurrentModificationExceptionसमस्या ठीक की गई.
RecyclerView-Selection
वर्शन 1.3
वर्शन 1.3.0-alpha01
17 दिसंबर, 2025
androidx.recyclerview:recyclerview-selection:1.3.0-alpha01 रिलीज़ हो गया है. वर्शन 1.3.0-alpha01 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- चुने गए हॉटस्पॉट में, पहले से चुने गए आइटम को हटाने की सुविधा (I0eae7, b/389814214) इससे डेवलपर को यह कंट्रोल करने में मदद मिलती है कि किसी आइटम को चुनने के लिए
RecyclerViewपर टैप या क्लिक करने पर, पहले से चुने गए अन्य आइटम चुने हुए रहें या उन्हें चुना न जाए.
वर्शन 1.2
वर्शन 1.2.0
20 मई, 2025
androidx.recyclerview:recyclerview-selection:1.2.0 रिलीज़ हो गया है. वर्शन 1.2.0 में ये बदलाव शामिल हैं.
1.1.0 के बाद हुए अहम बदलाव
- माउस को थोड़ा हिलाने पर क्लिक को ड्रैग में बदलने की समस्या ठीक की गई.
- हमने उस समस्या को ठीक कर दिया है जिसमें KeyProvider में कुंजी/जगह की मैपिंग तब तक नहीं होती थी, जब तक एंट्री को रीसाइकल नहीं किया जाता था.
वर्शन 1.2.0-rc01
7 मई, 2025
androidx.recyclerview:recyclerview-selection:1.2.0-rc01 रिलीज़ हो गया है. वर्शन 1.2.0-rc01 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- माउस को थोड़ा हिलाने पर क्लिक को ड्रैग में बदलने की समस्या ठीक की गई. (Ie9106)
वर्शन 1.2.0-beta01
9 अप्रैल, 2025
androidx.recyclerview:recyclerview-selection:1.2.0-beta01 रिलीज़ हो गया है. वर्शन 1.2.0-beta01 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- बंद किए गए
ViewCompat.LAYOUT_DIRECTION_एपीआई (I51710, b/317055535)
गड़बड़ियां ठीक की गईं
- यह लाइब्रेरी अब JSpecify nullness annotations का इस्तेमाल करती है. ये टाइप-यूज़ होते हैं. Kotlin डेवलपर को सही इस्तेमाल के लिए, कंपाइलर के इस तर्क का इस्तेमाल करना चाहिए:
-Xjspecify-annotations=strict(यह Kotlin कंपाइलर के 2.1.0 वर्शन से डिफ़ॉल्ट रूप से शुरू होता है). (I03b80, b/326456246)
वर्शन 1.2.0-alpha01
5 मई, 2021
androidx.recyclerview:recyclerview-selection:1.2.0-alpha01 रिलीज़ हो गया है. वर्शन 1.2.0-alpha01 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- उस समस्या को ठीक किया गया है जिसमें KeyProvider में कुंजी/जगह की मैपिंग तब तक नहीं होती थी, जब तक एंट्री को रीसाइकल नहीं किया जाता था. (b/145767095)
वर्शन 1.1
वर्शन 1.1.0
27 जनवरी, 2021
androidx.recyclerview:recyclerview-selection:1.1.0 रिलीज़ हो गया है. वर्शन 1.1.0 में ये बदलाव शामिल हैं.
1.0.0 के बाद के मुख्य बदलाव
- ऐप्लिकेशन क्रैश या हैंग होने से बचाने के लिए कई सुधार किए गए हैं.
SelectionTracker.BuilderपरwithGestureTooltypesऔरwithPointerTooltypesके इस्तेमाल पर रोक लगा दी गई है. इन तरीकों को आने वाले वर्शन में हटा दिया जाएगा.
वर्शन 1.1.0-rc03
1 अक्टूबर, 2020
androidx.recyclerview:recyclerview-selection:1.1.0-rc03 रिलीज़ हो गया है. वर्शन 1.1.0-rc03 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
बग ठीक करने और सुझाव/राय देने के लिए, स्टीफ़न कीज़लर को धन्यवाद.
- उस समस्या को ठीक किया गया है जिसमें आइटम को चुनने के दौरान, चाइल्ड व्यू के OnClickListeners को अनचाहे तरीके से कॉल किया जाता था.
- माउस हैंडलर (बैंड-सिलेक्शन) > अनचाहे स्क्रोल को आसानी से हैंडल करें. (b/167821507)
वर्शन 1.1.0-rc02
2 सितंबर, 2020
androidx.recyclerview:recyclerview-selection:1.1.0-rc02 रिलीज़ हो गया है. वर्शन 1.1.0-rc02 में ये बदलाव शामिल हैं.
हाइलाइट
- इनपुट हैंडलिंग में, 1.0 वर्शन से जुड़ी कई समस्याओं को ठीक किया गया है.
- लाइब्रेरी को
onRequestDisallowInterceptTouchEventके साथ काम करने के लिए अपडेट किया गया है. इससे यह ItemTouchHelper के साथ अच्छी तरह से काम कर पाएगी. इसके लिए, आपको सिर्फ़ स्वाइप करना होगा!
गड़बड़ियां ठीक की गईं
- उस समस्या को ठीक किया गया है जिसमें सिलेक्शन लाइब्रेरी,
GestureDetectorइवेंट की गलत व्याख्या करती थी. इस वजह से, चालू सिलेक्शन के दौरान टैप खो जाते थे (b/165030422) - उस समस्या को ठीक किया गया है जिसमें अडैप्टर से हटाए गए आइटम दिखाने के लिए, चुने गए आइटम अपडेट नहीं किए जाते थे. (b/138932671)
- उस समस्या को ठीक किया गया है जिसमें SelectionTracker के चालू होने पर, RecyclerView आइटम onClick इवेंट ट्रिगर करते थे (b/161162268)
- अब
onRequestDisallowInterceptTouchEventको सही तरीके से हैंडल करता है - Q पर माउस से स्क्रोल करते समय दिखने वाली
”Cannot call this method in a scroll callback”समस्या को ठीक किया गया - RecyclerView इंस्टेंस की ज़रूरी शर्तों के बारे में साफ़ तौर पर बताने के लिए, दस्तावेज़ों को अपडेट किया गया है. खास तौर पर,
StableIdKeyProviderमें
वर्शन 1.1.0-rc01
5 फ़रवरी, 2020
androidx.recyclerview:recyclerview-selection:1.1.0-rc01 रिलीज़ हो गया है. वर्शन 1.1.0-rc01 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- उस समस्या को ठीक किया गया है जिसमें स्क्रोल किए जा सकने वाले AppBarLayout (aosp/1193934) के साथ इंटरैक्ट करने पर, RecyclerView को जेस्चर से चुनकर स्क्रोल करना मुश्किल हो जाता था
वर्शन 1.1.0-beta01
4 दिसंबर, 2019
androidx.recyclerview:recyclerview-selection:1.1.0-beta01 रिलीज़ हो गया है. वर्शन 1.1.0-beta01 में ये बदलाव शामिल हैं.
डिफ़ेंसिव चेक और इंटरनल स्टेट के मैनेजमेंट से जुड़ी स्थिरता में सामान्य सुधार किए गए हैं.
गड़बड़ियां ठीक की गईं
- लाइब्रेरी की स्थिति को मैनेज करने और CANCEL इवेंट की व्याख्या करने की सुविधा को बेहतर बनाया गया है. इससे लाइब्रेरी के काम करने में स्थिरता आई है.
एपीआई में हुए बदलाव
- क्लास और तरीकों में, जहां सिलेक्शन की टाइप पैरामीटर मौजूद नहीं था वहां उसे जोड़ा गया है.
- इस्तेमाल न किए जाने वाले तरीके:
- SelectionTracker.Builder#withPointerTooltype
- SelectionTracker.Builder#withGestureTooltype
- इन तरीकों को इसलिए बनाया गया था, ताकि डेवलपर डिफ़ॉल्ट* के अलावा, अन्य टूलटाइप के लिए पॉइंटर या जेस्चर के व्यवहार को मैप कर सकें. इस सुविधा को बनाने का मकसद अच्छा था. हालांकि, इसका इस्तेमाल करने के बाद यह पता चला कि इनपुट के व्यवहार के बारे में उपयोगकर्ता की उम्मीदें, टूल टाइप के हिसाब से बहुत अलग-अलग होती हैं. साथ ही, Android इनपुट सिस्टम के हिसाब से "पैसिव" स्टाइलस, FINGER टूलटाइप होते हैं.
- जेस्चर के लिए डिफ़ॉल्ट टूलटाइप FINGER और पॉइंटर के लिए MOUSE होता है.