प्राथमिकता

डिवाइस स्टोरेज के साथ इंटरैक्ट किए बिना या यूज़र इंटरफ़ेस (यूआई) को मैनेज किए बिना, इंटरैक्टिव सेटिंग स्क्रीन बनाएं.
नया अपडेट स्टेबल रिलीज़ रिलीज़ कैंडिडेट बीटा रिलीज़ ऐल्फ़ा रिलीज़
26 जुलाई, 2023 1.2.1 - - -

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

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

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

ग्रूवी

dependencies {
    def preference_version = "1.2.1"

    // Java language implementation
    implementation "androidx.preference:preference:$preference_version"
    // Kotlin
    implementation "androidx.preference:preference-ktx:$preference_version"
}

Kotlin

dependencies {
    val preference_version = "1.2.1"

    // Java language implementation
    implementation("androidx.preference:preference:$preference_version")
    // Kotlin
    implementation("androidx.preference:preference-ktx:$preference_version")
}

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

सुझाव/राय दें या शिकायत करें

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

नई समस्या दर्ज करने का तरीका

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

वर्शन 1.2

वर्शन 1.2.1

26 जुलाई, 2023

androidx.preference:preference:1.2.1 रिलीज़ हो गया है. वर्शन 1.2.1 में ये बदलाव शामिल हैं.

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

  • PreferenceHeaderFragmentCompat अब सिस्टम के बैक बटन को सही तरीके से हैंडल करता है. ऐसा तब होता है, जब इसका इस्तेमाल ComponentDialog में किया जाता है या Hilt की @AndroidEntryPoint जैसी लाइब्रेरी का इस्तेमाल किया जाता है, जो Fragment के Context को रैप करती हैं.
  • अब प्राथमिकता, ऐक्टिविटी 1.5.1 पर निर्भर करती है. (Ie5d22)
  • PreferenceHeaderFragmentCompat.onCreateInitialDetailFragment अब Fragment आर्ग्युमेंट के तौर पर header.extras को दिखाता है.

वर्शन 1.2.0

26 जनवरी, 2022

androidx.preference:preference:1.2.0 और androidx.preference:preference-ktx:1.2.0 रिलीज़ हो गए हैं. वर्शन 1.2.0 में ये बदलाव शामिल हैं.

1.1.0 के बाद हुए अहम बदलाव

  • दो पैनल वाली सेटिंग के लिए PreferenceHeaderFragmentCompat जोड़ा गया है. यह सेटिंग, इस्तेमाल किए जा रहे डिवाइस के साइज़ के हिसाब से अपने-आप अडजस्ट हो जाती है. इसलिए, इसका इस्तेमाल फ़ोन, फ़ोल्ड किए जा सकने वाले डिवाइसों, और टैबलेट पर किया जा सकता है. हेडर पैन, PreferenceHeaderFragmentCompat पर onCreatePreferenceHeader() तरीके को ओवरराइड करके उपलब्ध कराया जाता है. हेडर PreferenceFragmentCompat में मौजूद कोई भी <Preference>, app:fragment का इस्तेमाल करता है. इससे वह फ़्रैगमेंट, जानकारी वाले दूसरे पैनल में दिखेगा. शुरुआती जानकारी का वह हिस्सा जिसे मैन्युअल तरीके से कोई प्राथमिकता चुने जाने से पहले दिखाया जाना चाहिए उसे onCreateInitialDetailFragment() को बदलकर पसंद के मुताबिक बनाया जा सकता है. डिफ़ॉल्ट तौर पर लागू करने पर, यह उस पहली प्राथमिकता को दिखाता है जिस पर फ़्रैगमेंट तय किया गया है.
class TwoPanePreference : PreferenceHeaderFragmentCompat() {
    override fun onCreatePreferenceHeader(): PreferenceFragmentCompat {
        return PreferenceHeader()
    }
}
  • हमने कई ऐसे एपीआई में नल वैल्यू की अनुमति देने वाले एनोटेशन जोड़े हैं जिनमें पहले @NonNull या @Nullable के बारे में नहीं बताया गया था. अगर आपने Kotlin कोड में जो नलेबिलिटी चुनी थी वह अब तय की गई नलेबिलिटी से मेल नहीं खाती है, तो इससे Kotlin सोर्स कोड में बदलाव हो सकता है.

  • PreferenceFragmentCompat अब यह देखने से पहले कि होस्टिंग कॉन्टेक्स्ट या गतिविधि इन इंटरफ़ेस को लागू करती है या नहीं, पैरंट फ़्रैगमेंट पर OnPreferenceStartFragmentCallback, OnNavigateToScreenListener, और OnDisplayPreferenceDialogListener इंटरफ़ेस के लागू होने की जांच करता है.

वर्शन 1.2.0-rc01

15 दिसंबर, 2021

androidx.preference:preference:1.2.0-rc01 और androidx.preference:preference-ktx:1.2.0-rc01 को 1.2.0-beta01 के बाद से बिना किसी बदलाव के रिलीज़ किया गया है. वर्शन 1.2.0-rc01 में ये बदलाव शामिल हैं.

वर्शन 1.2.0-beta01

17 नवंबर, 2021

androidx.preference:preference:1.2.0-beta01 और androidx.preference:preference-ktx:1.2.0-beta01 को Preference 1.2.0-alpha02 के बाद से बिना किसी बदलाव के रिलीज़ किया गया है. वर्शन 1.2.0-beta01 में ये बदलाव शामिल हैं.

वर्शन 1.2.0-alpha02

3 नवंबर, 2021

androidx.preference:preference:1.2.0-alpha02 और androidx.preference:preference-ktx:1.2.0-alpha02 रिलीज़ हो गए हैं. वर्शन 1.2.0-alpha02 में ये बदलाव शामिल हैं.

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

  • हमने कई ऐसे एपीआई में नल वैल्यू की अनुमति देने वाले एनोटेशन जोड़े हैं जिनमें पहले @NonNull या @Nullable के बारे में नहीं बताया गया था. (I04252, Ie2cc0)
  • openPreference() से openPreference() एपीआई को हटा दिया गया है. इस तरीके को आपके लिए कॉल किया जाता है और इसे मैन्युअल तरीके से कॉल नहीं किया जाना चाहिए.PreferenceHeaderFragmentCompat (Ia6989)

व्यवहार में बदलाव

  • OnNavigateToScreenListener और OnDisplayPreferenceDialogListener के लिए PreferenceFragmentCompat कॉलबैक अब OnPreferenceTreeClickListener के जैसे ही पैटर्न का पालन करते हैं. साथ ही, ये होस्टिंग कॉन्टेक्स्ट या गतिविधि में इन इंटरफ़ेस को लागू करने से पहले, मान्य लिसनर के लिए पैरंट फ़्रैगमेंट के क्रम को देखते हैं. (I7ae6c)

वर्शन 1.2.0-alpha01

27 अक्टूबर, 2021

androidx.preference:preference:1.2.0-alpha01 और androidx.preference:preference-ktx:1.2.0-alpha01 रिलीज़ हो गए हैं. वर्शन 1.2.0-alpha01 में ये बदलाव शामिल हैं.

नई सुविधाएं

  • दो पैनल की सेटिंग के लिए PreferenceHeaderFragmentCompat जोड़ा गया (I9a2d8)

व्यवहार में बदलाव

  • OnPreferenceDisplayDialogCallback, OnPreferenceStartScreenCallback, और OnPreferenceStartFragmentCallback के लिए, अब Preference कॉलबैक को गैर-गतिविधि वाले कॉन्टेक्स्ट में लागू किया जा सकता है. getActivity() की जांच करने से पहले, यह देखने के लिए कि getContext() इन कॉलबैक को लागू करता है या नहीं, इसकी जांच की जाती है. अगर getContext() किसी गतिविधि को दिखाता है (सामान्य स्थिति), तो व्यवहार में कोई बदलाव नहीं होता है.

  • PreferenceFragmentCompat, अब onPreferenceTreeClick को कॉल करने से पहले, पैरंट फ़्रैगमेंट पर OnPreferenceStartFragmentCallback इंटरफ़ेस के लागू होने की जांच करता है. इसके बाद, वह ऐक्टिविटी के लागू होने की जांच करता है. (c64eed)

वर्शन 1.1

वर्शन 1.1.1

15 अप्रैल, 2020

androidx.preference:preference:1.1.1 और androidx.preference:preference-ktx:1.1.1 रिलीज़ हो गए हैं. वर्शन 1.1.1 में ये बदलाव शामिल हैं.

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

  • एक्सएमएल से FragmentContainerView को बड़ा करते समय, PreferenceDialogFragmentCompat अब IllegalStateException नहीं दिखाएगा. (b/150051716)

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

  • अब प्राथमिकता, फ़्रैगमेंट 1.2.4 पर निर्भर करती है. (aosp/1277317)
  • preference-ktx अब androidx.core:core-ktx:1.1.0 और androidx.fragment:fragment-ktx:1.2.4 पर निर्भर करता है. यह मुख्य preference आर्टफ़ैक्ट की डिपेंडेंसी को दिखाता है. इससे यह पक्का होता है कि preference-ktx को अपग्रेड करने पर, ट्रांज़िटिव डिपेंडेंसी के मुख्य और -ktx आर्टफ़ैक्ट, दोनों अपडेट हो जाएं. (aosp/1277319)

वर्शन 1.1.0

5 सितंबर, 2019

androidx.preference:preference:1.1.0 और androidx.preference:preference-ktx:1.1.0 रिलीज़ हो गए हैं. इस वर्शन में शामिल बदलाव यहां देखे जा सकते हैं.

अगर यह पहली 1.1.* रिलीज़ है जिसे अपडेट किया जा रहा है, तो यहां पिछली स्टेबल रिलीज़, 1.0.0 के बाद हुए बड़े बदलावों की खास जानकारी दी गई है. आपको सेटिंग गाइड, सैंपल ऐप्लिकेशन, और Android Dev Summit की बातचीत भी काम की लग सकती है.

1.0.0 के बाद हुए अहम बदलाव

  • PreferenceFragment और फ़्रेमवर्क फ़्रैगमेंट का इस्तेमाल करने वाली अन्य क्लास बंद कर दी गई हैं. आपको इसके बजाय, PreferenceFragmentCompat और अन्य *compat क्लास का इस्तेमाल करना चाहिए.
  • अब किसी प्राथमिकता के लिए SummaryProvider सेट किया जा सकता है. इससे, प्राथमिकता के अपडेट होने या उपयोगकर्ता को दिखने पर, उसकी खास जानकारी को डाइनैमिक तरीके से कॉन्फ़िगर किया जा सकेगा. ज़्यादा जानकारी के लिए, गाइड देखें.
  • EditTextPreference.OnBindEditTextListener इंटरफ़ेस जोड़ा गया. इसकी मदद से, डायलॉग बॉक्स के बाइंड होने के बाद, उससे जुड़े डायलॉग बॉक्स में दिखने वाले EditText को पसंद के मुताबिक बनाया जा सकता है. यह EditTextPreference पर सीधे तौर पर android:inputType जैसे एट्रिब्यूट का इस्तेमाल करने का विकल्प है. हालांकि, AndroidX लाइब्रेरी में इसका इस्तेमाल नहीं किया जा सकता. ज़्यादा जानकारी के लिए, गाइड देखें.
  • Preference.setCopyingEnabled() जोड़ा गया. इसे सेट करने पर, प्राथमिकता को दबाकर रखने से एक कॉन्टेक्स्ट मेन्यू दिखेगा. इससे प्राथमिकता की खास जानकारी को कॉपी किया जा सकेगा.
  • मटीरियल स्पेसिफ़िकेशन से मेल खाने के लिए, SeekBarPreference स्टाइलिंग को अपडेट किया गया. SeekBarPreference में हुए अन्य बदलावों के बारे में जानने के लिए, बदलाव की पूरी जानकारी देखें.
  • कई गड़बड़ियां ठीक की गई हैं, स्टाइल अपडेट किए गए हैं, एपीआई लेवल के साथ काम करने से जुड़ी गड़बड़ियां ठीक की गई हैं, और सामान्य तौर पर क्वालिटी ऑफ़ लाइफ़ (QOL) में सुधार किए गए हैं.

वर्शन 1.1.0-rc01

2 जुलाई, 2019

androidx.preference:preference:1.1.0-rc01 और androidx.preference:preference-ktx:1.1.0-rc01 रिलीज़ हो गए हैं. इस वर्शन में शामिल बदलाव यहां देखे जा सकते हैं.

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

  • Preference#onInitializeAccessibilityNodeInfo का बहिष्कार करें
  • इस तरीके से, किसी खास Preference के लिए सुलभता नोड की जानकारी को प्रॉक्सी किया गया था. हालांकि, मनमुताबिक बनाने के लिए यह गलत लेयर है. अगर आपको सुलभता से जुड़ी जानकारी में बदलाव करना है, तो आपको onBindViewHolder को ओवरराइड करना चाहिए. साथ ही, व्यू में सुलभता से जुड़ी जानकारी सीधे तौर पर जोड़नी चाहिए.

वर्शन 1.1.0-beta01

5 जून, 2019

androidx.preference:preference:1.1.0-beta01 और androidx.preference:preference-ktx:1.1.0-beta01 रिलीज़ हो गए हैं. इस वर्शन में शामिल बदलाव यहां देखे जा सकते हैं.

1.1.0 के बाद हुए अहम बदलाव

अगर यह 1.1.* वर्शन की पहली रिलीज़ है जिसे अपडेट किया जा रहा है, तो यहां पिछली स्टेबल रिलीज़ 1.1.0 के बाद हुए बड़े बदलावों की खास जानकारी दी गई है. आपको सेटिंग गाइड, सैंपल ऐप्लिकेशन, और Android Dev Summit की बातचीत भी काम की लग सकती है.

  • PreferenceFragment और फ़्रेमवर्क फ़्रैगमेंट का इस्तेमाल करने वाली अन्य क्लास बंद कर दी गई हैं. आपको इसके बजाय, PreferenceFragmentCompat और अन्य *compat क्लास का इस्तेमाल करना चाहिए.
  • अब किसी Preference पर SummaryProvider सेट किया जा सकता है. इससे, Preference के अपडेट होने या उपयोगकर्ता को दिखने पर, उसकी खास जानकारी को डाइनैमिक तरीके से कॉन्फ़िगर किया जा सकेगा. ज़्यादा जानकारी के लिए, गाइड देखें.
  • EditTextPreference.OnBindEditTextListener इंटरफ़ेस जोड़ा गया. इससे डायलॉग के बाइंड होने के बाद, उससे जुड़े डायलॉग में दिखाए गए EditText को पसंद के मुताबिक बनाया जा सकता है. यह सीधे तौर पर, EditTextPreference पर android:inputType जैसे एट्रिब्यूट का इस्तेमाल करने की जगह पर इस्तेमाल किया जाता है. हालांकि, AndroidX लाइब्रेरी में यह सुविधा काम नहीं करती. ज़्यादा जानकारी के लिए, गाइड देखें.
  • Preference.setCopyingEnabled() जोड़ा गया. इसे सेट करने पर, प्राथमिकता को दबाकर रखने से एक कॉन्टेक्स्ट मेन्यू दिखेगा. इससे प्राथमिकता की खास जानकारी को कॉपी किया जा सकेगा.
  • मटीरियल स्पेसिफ़िकेशन से मेल खाने के लिए, SeekBarPreference की स्टाइलिंग को अपडेट किया गया है. SeekBarPreference में हुए अन्य बदलावों के बारे में जानने के लिए, बदलाव की पूरी जानकारी देखें.
  • कई गड़बड़ियां ठीक की गई हैं, स्टाइल अपडेट किए गए हैं, एपीआई लेवल के साथ काम करने से जुड़ी गड़बड़ियां ठीक की गई हैं, और सामान्य तौर पर क्वालिटी ऑफ़ लाइफ़ (QOL) में सुधार किए गए हैं.

1.1.0-alpha05 के बाद से एपीआई में हुए बदलाव

  • getOnBindEditTextListener को सार्वजनिक एपीआई से हटाता है. इस एपीआई के साथ इंटरैक्ट करते समय, आपको सिर्फ़ setOnBindEditTextListener का इस्तेमाल करना चाहिए.

अगर आपको कोई समस्या आती है या आपके पास नई सुविधाओं के लिए कोई सुझाव है, तो कृपया यहां बग की शिकायत करें!

वर्शन 1.1.0-alpha05

7 मई, 2019

androidx.preference:preference:1.1.0-alpha05 और androidx.preference:preference-ktx:1.1.0-alpha05 रिलीज़ हो गए हैं. इस वर्शन में शामिल बदलाव यहां देखे जा सकते हैं.

नई सुविधाएं

  • उन प्राथमिकताओं के लिए स्टाइलिंग अपडेट की गई है जिन्हें चुना नहीं जा सकता. टाइटल और खास जानकारी, अब एक ही रंग में दिखती है. इससे यह साफ़ तौर पर पता चलता है कि इनके साथ इंटरैक्ट नहीं किया जा सकता. इनका इस्तेमाल सिर्फ़ जानकारी दिखाने के लिए किया जाता है.
  • ध्यान दें: ऐसा हो सकता है कि आपको उन प्राथमिकताओं में enableCopying="true" जोड़ना पड़े जिन्हें चुना नहीं जा सकता, ताकि खास जानकारी को कॉपी करने के लिए, उन्हें दबाकर रखा जा सके.

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

  • एक रिग्रेशन को ठीक किया गया है. इसमें PreferenceCategory और अन्य ऐसी प्राथमिकताओं को चुना जाता था जिन्हें चुना नहीं जा सकता. ऐसा करने पर, रिपल इफ़ेक्ट दिखता था
  • सुलभता से जुड़ी उस समस्या को ठीक किया गया है जिसमें TalkBack, DropDownPreference को क्लिक किए जा सकने वाले आइटम के तौर पर नहीं देखता था
  • दाएं से बाएं ओर लिखे जाने वाले लेआउट से जुड़ी कुछ समस्याएं ठीक की गई हैं
  • Fragment से मैच करने के लिए, PreferenceFragmentCompat में कुछ ऐसे एनोटेशन अपडेट किए गए हैं जिनमें null वैल्यू हो सकती है

वर्शन 1.1.0-alpha04

13 मार्च, 2019

androidx.preference:preference:1.1.0-alpha04 और androidx.preference:preference-ktx:1.1.0-alpha04 रिलीज़ हो गए हैं. इस वर्शन में शामिल सभी बदलाव की पूरी सूची यहां देखी जा सकती है.

नई सुविधाएं

SeekBarPreference अपडेट!

  • स्टाइल को Material Specifications के मुताबिक अपडेट किया गया
    • वैल्यू लेबल अब डिफ़ॉल्ट रूप से छिपा होता है. हालांकि, इसे अब भी app:showSeekBarValue="true" या setShowSeekBarValue(true) की मदद से दिखाया जा सकता है. यह लेबल, Material स्पेसिफ़िकेशन का हिस्सा नहीं है. हालांकि, हमें पता है कि इसका इस्तेमाल काफ़ी ज़्यादा किया जाता है. इसलिए, हम इसे इस्तेमाल करने की सुविधा जारी रखेंगे. भले ही, हम इसका इस्तेमाल करने का सुझाव नहीं देते.
    • अब SeekBar को खींचते समय वैल्यू लेबल अपडेट होता है. पहले, ऐसा तब होता था, जब SeekBar को छोड़ दिया जाता था. ध्यान दें कि इसका मतलब यह नहीं है कि वैल्यू को इंटरनल तौर पर अपडेट किया गया है. इस सुविधा को चालू करने वाले नए एपीआई के बारे में जानने के लिए, यहां दिया गया लिंक देखें.
    • ध्यान दें: हालांकि, यह सुविधा उपलब्ध है, लेकिन आपको SeekBarPreference पर खास जानकारी सेट करने से बचना चाहिए. ऐसा इसलिए, क्योंकि यह सुविधा इसके लिए नहीं है और न ही यह Material spec का हिस्सा है.
  • इससे लगातार अपडेट करने की सुविधा मिलती है. इससे SeekBar को अपनी सेव की गई वैल्यू को अपडेट करने की अनुमति मिलती है, जबकि SeekBar को खींचा जा रहा हो. इसे एक्सएमएल या प्रोग्राम के हिसाब से चालू किया जा सकता है. इसके लिए, app:updatesContinuously="true" या setUpdatesContinuously(true) का इस्तेमाल करें. स्क्रीन पर SeekBar की जगह बदलने पर, यह इवेंट ट्रिगर होगा.

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

  • findPreference() में, नल वैल्यू स्वीकार करने की सुविधा के बारे में जानकारी देने वाले एनोटेशन जोड़ता है

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

  • कॉपी करने की सुविधा चालू न होने पर, कॉन्टेक्स्ट मेन्यू लिसनर को सही तरीके से नहीं हटाया जा रहा था. इस गड़बड़ी को ठीक कर दिया गया है

वर्शन 1.1.0-alpha03

7 फ़रवरी, 2019

androidx.preference:preference 1.1.0-alpha03

androidx.preference:preference 1.1.0-alpha03 और androidx.preference:preference-ktx 1.1.0-alpha03 को इन बदलावों के साथ रिलीज़ किया गया है.

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

  • EditTextPreference के डायलॉग में, कॉपी/चिपकाएं पॉप-अप कभी-कभी नहीं दिखता था. इस समस्या को ठीक कर दिया गया है
  • उस समस्या को ठीक किया गया है जिसमें अडैप्टर को ठीक से अनरजिस्टर नहीं किया गया था. इसकी वजह से, कुछ खास स्थितियों में मेमोरी लीक हो रही थी (b/121006469)
  • कॉन्फ़िगरेशन में बदलाव करते समय, डायलॉग से जुड़ी कुछ क्रैश होने की समस्याओं को ठीक किया गया (b/122167543)
  • MultiSelectListPreference के लिए SummaryProvider के काम न करने की समस्या ठीक की गई (b/123022772)

वर्शन 1.1.0-alpha02

17 दिसंबर, 2018

कृपया हाल ही में अपडेट की गई सेटिंग गाइड और सैंपल ऐप्लिकेशन भी देखें.

नई सुविधाएं

  • EditTextPreference.OnBindEditTextListener इंटरफ़ेस जोड़ा गया इससे डायलॉग बाइंड होने के बाद, उससे जुड़े डायलॉग में दिखाए गए EditText को पसंद के मुताबिक बनाया जा सकता है. उदाहरण के लिए, कस्टम इनपुट टाइप / लंबाई सेट करना या TextWatcher जोड़ना.

  • Preference.setCopyingEnabled() जोड़ा गया इस विकल्प को सेट करने पर, प्राथमिकता को दबाकर रखने से एक कॉन्टेक्स्ट मेन्यू दिखेगा. इससे प्राथमिकता की खास जानकारी को कॉपी किया जा सकेगा. इसका इस्तेमाल, उपयोगकर्ता के आईडी / ऐप्लिकेशन के वर्शन की जानकारी जैसी स्टैटिक जानकारी को कॉपी करने की अनुमति देने के लिए किया जा सकता है.

  • preferenceTheme अब ऐक्टिविटी थीम पर लागू होता है इसका मतलब है कि कोड से Preference बनाते समय, अब आपको PreferenceManager#getContext() से कॉन्टेक्स्ट का इस्तेमाल करने की ज़रूरत नहीं है. इसके बजाय, अपने Fragment/Activity कॉन्टेक्स्ट का इस्तेमाल किया जा सकता है.

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

  • findPreference() को फिर से फ़ैक्टर किया गया है, ताकि यह <T extends Preference> दिखा सके इसका मतलब है कि findPreference() का इस्तेमाल करते समय, आपको Preferences को साफ़ तौर पर कास्ट करने की ज़रूरत नहीं है. उदाहरण के लिए, EditTextPreference preference = findPreference(“edit_text”) अब मान्य कोड है.

वर्शन 1.1.0-alpha01

5 नवंबर, 2018

नई सुविधाएं

  • अब किसी Preference पर SummaryProvider सेट किया जा सकता है. इससे, Preference के अपडेट होने या उपयोगकर्ता को दिखने पर, उसकी खास जानकारी को डाइनैमिक तरीके से कॉन्फ़िगर किया जा सकेगा.
  • ListPreference और EditTextPreference के लिए, डिफ़ॉल्ट SummaryProvider लागू करने की सुविधा जोड़ी गई है. इसे सेट करने पर, Preference की खास जानकारी अपने-आप अपडेट हो जाएगी. इसमें सेव की गई वैल्यू दिखेगी. अगर कोई वैल्यू सेव नहीं की गई है, तो ‘सेट नहीं है’ दिखेगा. इन्हें app:useSimpleSummaryProvider=”true” के साथ सेट किया जा सकता है
  • PreferenceGroup#removePreferenceRecursively को जोड़ा गया है. यह फ़ंक्शन, ग्रुप या हैरारकी में नीचे मौजूद नेस्टेड ग्रुप से किसी Preference को बार-बार ढूंढता है और उसे हटाता है.

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

  • PreferenceFragment और फ़्रेमवर्क फ़्रैगमेंट का इस्तेमाल करने वाली अन्य क्लास को बंद कर दिया गया है. आपको इसके बजाय, PreferenceFragmentCompat और अन्य कंपैट क्लास का इस्तेमाल करना चाहिए.

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

  • PreferenceCategories के साथ iconSpaceReserved के ठीक से काम न करने की समस्या को ठीक किया गया है.
  • API 21 से नीचे के वर्शन में, PreferenceCategories के लिए रंग सेट करने की सुविधा काम नहीं कर रही थी. इस समस्या को ठीक कर दिया गया है.
  • एपीआई 21 से पहले के वर्शन में, SeekBarPreference के लेआउट में कुछ गड़बड़ियां ठीक की गईं.