পছন্দ

ডিভাইস স্টোরেজে হস্তক্ষেপ বা UI পরিচালনা করার প্রয়োজন ছাড়াই ইন্টারেক্টিভ সেটিংস স্ক্রিন তৈরি করুন।
সর্বশেষ আপডেট স্থিতিশীল রিলিজ রিলিজ প্রার্থী বিটা রিলিজ আলফা রিলিজ
২৬ জুলাই, ২০২৩ ১.২.১ - - -

নির্ভরতা ঘোষণা করা

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"
}

কোটলিন

dependencies {
    val preference_version = "1.2.1"

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

নির্ভরতা সম্পর্কে আরও তথ্যের জন্য, 'বিল্ড নির্ভরতা যোগ করুন ' দেখুন।

প্রতিক্রিয়া

আপনার মতামত জেটপ্যাককে আরও উন্নত করতে সাহায্য করে। আপনি যদি নতুন কোনো সমস্যা খুঁজে পান অথবা এই লাইব্রেরিটি উন্নত করার জন্য কোনো ধারণা থাকে, তবে আমাদের জানান। নতুন কোনো সমস্যা তৈরি করার আগে অনুগ্রহ করে এই লাইব্রেরির বিদ্যমান সমস্যাগুলো দেখে নিন। আপনি তারকা বোতামে ক্লিক করে কোনো বিদ্যমান সমস্যায় আপনার ভোট যোগ করতে পারেন।

একটি নতুন সমস্যা তৈরি করুন

আরও তথ্যের জন্য ইস্যু ট্র্যাকার ডকুমেন্টেশন দেখুন।

সংস্করণ ১.২

সংস্করণ ১.২.১

২৬ জুলাই, ২০২৩

androidx.preference:preference:1.2.1 প্রকাশিত হয়েছে। সংস্করণ 1.2.1-এ এই কমিটগুলো অন্তর্ভুক্ত রয়েছে।

বাগ সংশোধন

  • PreferenceHeaderFragmentCompat এখন সিস্টেমের ব্যাক বাটনকে সঠিকভাবে হ্যান্ডেল করে, যখন এটি কোনো ComponentDialog মধ্যে ব্যবহৃত হয় অথবা যখন Hilt-এর @AndroidEntryPoint মতো লাইব্রেরি ব্যবহার করা হয় যা Fragment-এর Context র‍্যাপ করে।
  • পছন্দ এখন অ্যাক্টিভিটি ১.৫.১ এর উপর নির্ভর করে। ( Ie5d22 )
  • PreferenceHeaderFragmentCompat.onCreateInitialDetailFragment এখন header.extras Fragment আর্গুমেন্ট হিসেবে প্রচার করে।

সংস্করণ ১.২.০

২৬ জানুয়ারী, ২০২২

androidx.preference:preference:1.2.0 এবং androidx.preference:preference-ktx:1.2.0 প্রকাশ করা হয়েছে। সংস্করণ 1.2.0-তে এই কমিটগুলো অন্তর্ভুক্ত রয়েছে।

১.১.০ সংস্করণ থেকে গুরুত্বপূর্ণ পরিবর্তনসমূহ

  • দুটি প্যানেলযুক্ত প্রেফারেন্সের জন্য PreferenceHeaderFragmentCompat যোগ করা হয়েছে, যা ব্যবহৃত ডিভাইসের আকারের উপর ভিত্তি করে স্বয়ংক্রিয়ভাবে মানিয়ে নেয়, ফলে এটি ফোন, ফোল্ডেবল এবং ট্যাবলেটে ব্যবহারের জন্য উপযুক্ত। PreferenceHeaderFragmentCompat এর onCreatePreferenceHeader() মেথডটি ওভাররাইড করে হেডার প্যানেলটি প্রদান করা হয়। হেডার PreferenceFragmentCompat এর মধ্যে থাকা যেকোনো <Preference> যাতে app:fragment ব্যবহৃত হয়, তার ফলে সেই ফ্র্যাগমেন্টটি দ্বিতীয় ডিটেইল প্যানেলে প্রদর্শিত হবে। ম্যানুয়ালি কোনো প্রেফারেন্স নির্বাচন করার আগে যে প্রাথমিক ডিটেইল ফ্র্যাগমেন্টটি প্রদর্শিত হওয়া উচিত, তা onCreateInitialDetailFragment() ওভাররাইড করে কাস্টমাইজ করা যায়। ডিফল্ট ইমপ্লিমেন্টেশনটি প্রথম সেই প্রেফারেন্সটি রিটার্ন করে, যার উপর একটি ফ্র্যাগমেন্ট সংজ্ঞায়িত করা আছে।
class TwoPanePreference : PreferenceHeaderFragmentCompat() {
    override fun onCreatePreferenceHeader(): PreferenceFragmentCompat {
        return PreferenceHeader()
    }
}
  • এমন অনেক API-তে নালিবিলিটি অ্যানোটেশন যোগ করা হয়েছে যেগুলিতে আগে @NonNull বা @Nullable উল্লেখ করা ছিল না। এটি একটি সম্ভাব্য কোটলিন সোর্স ব্রেকিং চেঞ্জ হতে পারে, যদি আপনার কোটলিন কোডে বেছে নেওয়া নালিবিলিটি এখন সংজ্ঞায়িত নালিবিলিটির সাথে না মেলে।

  • PreferenceFragmentCompat এখন হোস্টিং Context বা Activity এই ইন্টারফেসগুলো ইমপ্লিমেন্ট করে কিনা তা দেখার আগে, প্যারেন্ট ফ্র্যাগমেন্টগুলোতে OnPreferenceStartFragmentCallback , OnNavigateToScreenListener , এবং OnDisplayPreferenceDialogListener ইন্টারফেসগুলোর ইমপ্লিমেন্টেশন খোঁজে।

সংস্করণ 1.2.0-rc01

১৫ ডিসেম্বর, ২০২১

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

১৭ নভেম্বর, ২০২১

Preference 1.2.0-alpha02 থেকে কোনো পরিবর্তন ছাড়াই androidx.preference:preference:1.2.0-beta01 এবং androidx.preference:preference-ktx:1.2.0-beta01 প্রকাশ করা হয়েছে। সংস্করণ 1.2.0-beta01-এ এই কমিটগুলো অন্তর্ভুক্ত রয়েছে।

সংস্করণ 1.2.0-alpha02

৩ নভেম্বর, ২০২১

androidx.preference:preference:1.2.0-alpha02 এবং androidx.preference:preference-ktx:1.2.0-alpha02 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-alpha02-এ এই কমিটগুলো অন্তর্ভুক্ত রয়েছে।

এপিআই পরিবর্তন

  • যেসব API-তে আগে @NonNull বা @Nullable উল্লেখ করা ছিল না, সেগুলোর অনেকগুলিতেই নালিবিলিটি অ্যানোটেশন যোগ করা হয়েছে। ( I04252 , Ie2cc0 )
  • PreferenceHeaderFragmentCompat থেকে openPreference() API সরিয়ে ফেলা হয়েছে - এই মেথডটি আপনার জন্য স্বয়ংক্রিয়ভাবে কল করা হয় এবং এটি ম্যানুয়ালি কল করার প্রয়োজন নেই। ( Ia6989 )

আচরণগত পরিবর্তন

  • OnNavigateToScreenListener এবং OnDisplayPreferenceDialogListener জন্য PreferenceFragmentCompat কলব্যাকগুলি এখন OnPreferenceTreeClickListener মতো একই প্যাটার্ন অনুসরণ করে এবং হোস্টিং Context বা Activity এই ইন্টারফেসগুলি ইমপ্লিমেন্ট করে কিনা তা দেখার আগে বৈধ লিসেনারগুলির জন্য প্যারেন্ট ফ্র্যাগমেন্ট হায়ারার্কি অনুসন্ধান করে। ( I7ae6c )

সংস্করণ 1.2.0-alpha01

২৭ অক্টোবর, ২০২১

androidx.preference:preference:1.2.0-alpha01 এবং androidx.preference:preference-ktx:1.2.0-alpha01 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-alpha01-এ এই কমিটগুলো অন্তর্ভুক্ত রয়েছে।

নতুন বৈশিষ্ট্য

  • দুই-পেন পছন্দের জন্য PreferenceHeaderFragmentCompat যোগ করা হয়েছে ( I9a2d8 )

আচরণগত পরিবর্তন

  • OnPreferenceDisplayDialogCallback, OnPreferenceStartScreenCallback, এবং OnPreferenceStartFragmentCallback-এর জন্য প্রেফারেন্স কলব্যাকগুলো এখন একটি নন-অ্যাক্টিভিটি কনটেক্সট-এ ইমপ্লিমেন্ট করা যাবে। getActivity() চেক করার আগে, getContext() এই কলব্যাকগুলো ইমপ্লিমেন্ট করেছে কিনা তা পরীক্ষা করা হয়। যদি getContext() একটি অ্যাক্টিভিটি রিটার্ন করে (যা সচরাচর ঘটে), তাহলে আচরণে কোনো পরিবর্তন হয় না।

  • PreferenceFragmentCompat এর onPreferenceTreeClick কলটি এখন Activity-র ইমপ্লিমেন্টেশন বিবেচনা করার আগে প্যারেন্ট ফ্র্যাগমেন্টগুলোতে OnPreferenceStartFragmentCallback ইন্টারফেসের ইমপ্লিমেন্টেশন খোঁজে। ( c64eed )

সংস্করণ ১.১

সংস্করণ ১.১.১

১৫ এপ্রিল, ২০২০

androidx.preference:preference:1.1.1 এবং androidx.preference:preference-ktx:1.1.1 প্রকাশিত হয়েছে। সংস্করণ 1.1.1-এ এই কমিটগুলো অন্তর্ভুক্ত রয়েছে।

বাগ সংশোধন

  • xml থেকে 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 )

সংস্করণ ১.১.০

৫ সেপ্টেম্বর, ২০১৯

androidx.preference:preference:1.1.0 এবং androidx.preference:preference-ktx:1.1.0 রিলিজ করা হয়েছে। এই সংস্করণে অন্তর্ভুক্ত কমিটগুলো এখানে পাওয়া যাবে।

আপনি যদি প্রথমবারের মতো 1.1.* রিলিজে আপডেট করে থাকেন, তাহলে সর্বশেষ স্থিতিশীল রিলিজ 1.0.0 -এর পর থেকে হওয়া বড় পরিবর্তনগুলোর একটি সংক্ষিপ্ত তালিকা এখানে দেওয়া হলো। এছাড়াও সেটিংস গাইড , স্যাম্পল অ্যাপ এবং অ্যান্ড্রয়েড ডেভ সামিট-এর আলোচনাটিও আপনার কাজে লাগতে পারে।

১.০.০ সংস্করণ থেকে গুরুত্বপূর্ণ পরিবর্তনসমূহ

  • PreferenceFragment এবং ফ্রেমওয়ার্ক Fragment ব্যবহারকারী অন্যান্য ক্লাসগুলো অপ্রচলিত হয়ে গেছে; এর পরিবর্তে আপনার PreferenceFragmentCompat এবং অন্যান্য *compat ক্লাস ব্যবহার করা উচিত।
  • এখন আপনি কোনো প্রেফারেন্সে একটি SummaryProvider সেট করতে পারেন, যা প্রেফারেন্সটি আপডেট হলে বা ব্যবহারকারীর কাছে দৃশ্যমান হলে এর সামারিটি ডাইনামিকভাবে কনফিগার করবে। আরও তথ্যের জন্য গাইডটি দেখুন।
  • EditTextPreference.OnBindEditTextListener ইন্টারফেসটি যোগ করা হয়েছে। এর ফলে, ডায়ালগটি বাইন্ড হয়ে যাওয়ার পর সংশ্লিষ্ট ডায়ালগে প্রদর্শিত EditText কাস্টমাইজ করা যায়। এটি EditTextPreference এর উপর সরাসরি android:inputType মতো অ্যাট্রিবিউট ব্যবহারের একটি সরাসরি বিকল্প, যা AndroidX লাইব্রেরিতে সমর্থিত নয়। আরও তথ্যের জন্য গাইডটি দেখুন।
  • Preference.setCopyingEnabled() যোগ করা হয়েছে। এটি সেট করা থাকলে, Preference-এর উপর লং প্রেস করলে একটি কনটেক্সট মেনু দেখা যাবে, যা Preference-টির সারাংশ কপি করার সুযোগ দেবে।
  • Material স্পেসিফিকেশনের সাথে সামঞ্জস্য রেখে SeekBarPreference স্টাইলিং আপডেট করা হয়েছে। SeekBarPreference এর অন্যান্য পরিবর্তন জানতে বিস্তারিত চেঞ্জলগ দেখুন।
  • প্রচুর পরিমাণে বাগ ফিক্স, স্টাইল আপডেট, এপিআই লেভেল কম্প্যাটিবিলিটি ফিক্স এবং সার্বিক QOL (কোয়ালিটি অফ লাইফ) উন্নতি।

সংস্করণ 1.1.0-rc01

২ জুলাই, ২০১৯

androidx.preference:preference:1.1.0-rc01 এবং androidx.preference:preference-ktx:1.1.0-rc01 রিলিজ করা হয়েছে। এই সংস্করণে অন্তর্ভুক্ত কমিটগুলো এখানে পাওয়া যাবে।

এপিআই পরিবর্তন

  • Deprecate Preference#onInitializeAccessibilityNodeInfo
  • এই পদ্ধতিটি একটি নির্দিষ্ট প্রেফারেন্সের জন্য অ্যাক্সেসিবিলিটি নোডের তথ্য প্রক্সি করেছে - কিন্তু এই কাস্টমাইজেশনের জন্য এটি ভুল লেয়ার। আপনি যদি অ্যাক্সেসিবিলিটি তথ্য পরিবর্তন করতে চান, তবে এর পরিবর্তে আপনার onBindViewHolder ওভাররাইড করা উচিত এবং সরাসরি ভিউতে অ্যাক্সেসিবিলিটি তথ্য যোগ করা উচিত।

সংস্করণ 1.1.0-beta01

৫ জুন, ২০১৯

androidx.preference:preference:1.1.0-beta01 এবং androidx.preference:preference-ktx:1.1.0-beta01 রিলিজ করা হয়েছে। এই সংস্করণে অন্তর্ভুক্ত কমিটগুলো এখানে পাওয়া যাবে।

১.১.০ সংস্করণ থেকে গুরুত্বপূর্ণ পরিবর্তনসমূহ

আপনি যদি প্রথমবারের মতো 1.1.* রিলিজে আপডেট করে থাকেন, তাহলে সর্বশেষ স্থিতিশীল রিলিজ 1.1.0-এর পর থেকে হওয়া বড় পরিবর্তনগুলোর একটি সংক্ষিপ্ত তালিকা এখানে দেওয়া হলো। এছাড়াও সেটিংস গাইড , স্যাম্পল অ্যাপ এবং অ্যান্ড্রয়েড ডেভ সামিটের আলোচনাটিও আপনার কাজে লাগতে পারে।

  • PreferenceFragment এবং ফ্রেমওয়ার্ক Fragment ব্যবহারকারী অন্যান্য ক্লাসগুলো অপ্রচলিত হয়ে গেছে - এর পরিবর্তে আপনার PreferenceFragmentCompat এবং অন্যান্য *compat ক্লাস ব্যবহার করা উচিত।
  • এখন আপনি কোনো প্রেফারেন্সে একটি সামারিপ্রোভাইডার সেট করতে পারেন, যা প্রেফারেন্সটি আপডেট হলে বা ব্যবহারকারীর কাছে দৃশ্যমান হলে এর সামারিটি ডাইনামিকভাবে কনফিগার করবে। আরও তথ্যের জন্য গাইডটি দেখুন।
  • EditTextPreference.OnBindEditTextListener ইন্টারফেসটি যোগ করা হয়েছে। এর ফলে, ডায়ালগটি বাইন্ড হয়ে যাওয়ার পর সংশ্লিষ্ট ডায়ালগে প্রদর্শিত EditText-কে কাস্টমাইজ করা যায়। এটি EditTextPreference-এর উপর সরাসরি android:inputType-এর মতো অ্যাট্রিবিউট ব্যবহারের একটি সরাসরি বিকল্প, যা AndroidX লাইব্রেরিতে সমর্থিত নয়। আরও তথ্যের জন্য গাইডটি দেখুন।
  • Preference.setCopyingEnabled() যোগ করা হয়েছে। এটি সেট করা থাকলে, Preference-এর উপর লং প্রেস করলে একটি কনটেক্সট মেনু দেখা যাবে, যা Preference-টির সারাংশ কপি করার সুযোগ দেবে।
  • Material স্পেসিফিকেশনের সাথে সামঞ্জস্য রেখে SeekBarPreference-এর স্টাইলিং আপডেট করা হয়েছে। SeekBarPreference-এর অন্যান্য পরিবর্তন জানতে বিস্তারিত চেঞ্জলগ দেখুন।
  • প্রচুর পরিমাণে বাগ ফিক্স, স্টাইল আপডেট, এপিআই লেভেল কম্প্যাটিবিলিটি ফিক্স এবং সার্বিক QOL (কোয়ালিটি অফ লাইফ) উন্নতি।

1.1.0-alpha05 থেকে API পরিবর্তনসমূহ

  • পাবলিক এপিআই থেকে getOnBindEditTextListener সরিয়ে দেওয়া হয়েছে, শুধুমাত্র এই এপিআই-এর সাথে কাজ করার সময় আপনার setOnBindEditTextListener ব্যবহার করার প্রয়োজন হবে।

কোনো সমস্যা হলে, অথবা নতুন কোনো ফিচারের জন্য পরামর্শ থাকলে, অনুগ্রহ করে এখানে বাগ রিপোর্ট করুন!

সংস্করণ 1.1.0-alpha05

৭ মে, ২০১৯

androidx.preference:preference:1.1.0-alpha05 এবং androidx.preference:preference-ktx:1.1.0-alpha05 রিলিজ করা হয়েছে। এই সংস্করণে অন্তর্ভুক্ত কমিটগুলো এখানে পাওয়া যাবে।

নতুন বৈশিষ্ট্য

  • অনির্বাচনযোগ্য প্রেফারেন্সগুলোর স্টাইলিং আপডেট করা হয়েছে - শিরোনাম এবং সারাংশ এখন একই রঙের হবে, যাতে এটি স্পষ্ট হয় যে এগুলোর সাথে কোনো ইন্টারঅ্যাকশন করা যাবে না এবং এগুলো শুধুমাত্র তথ্য প্রদর্শনের জন্য ব্যবহৃত হয়।
  • দ্রষ্টব্য: আপনি আপনার অনির্বাচনযোগ্য প্রেফারেন্সে enableCopying="true" যোগ করার কথা বিবেচনা করতে পারেন, যাতে আপনি লং প্রেস করে সারাংশটি কপি করতে পারেন।

বাগ সংশোধন

  • একটি রিগ্রেশন সংশোধন করা হয়েছে, যেখানে PreferenceCategory এবং অন্যান্য অনির্বাচনযোগ্য Preference-গুলো নির্বাচন করা হলে একটি চেইন রিঅ্যাকশন তৈরি হতো।
  • একটি অ্যাক্সেসিবিলিটি সমস্যা সমাধান করা হয়েছে, যেখানে TalkBack, DropDownPreference-কে ক্লিকযোগ্য হিসেবে দেখতে পাচ্ছিল না।
  • আরটিএল লেআউটের কিছু সমস্যা সমাধান করা হয়েছে
  • Fragment-এর সাথে মেলানোর জন্য PreferenceFragmentCompat-এর কিছু nullable অ্যানোটেশন আপডেট করা হয়েছে।

সংস্করণ 1.1.0-alpha04

১৩ মার্চ, ২০১৯

androidx.preference:preference:1.1.0-alpha04 এবং androidx.preference:preference-ktx:1.1.0-alpha04 রিলিজ করা হয়েছে। এই সংস্করণে অন্তর্ভুক্ত কমিটগুলির সম্পূর্ণ তালিকা এখানে পাওয়া যাবে।

নতুন বৈশিষ্ট্য

SeekBarPreference আপডেট!

  • উপাদানের স্পেসিফিকেশনের সাথে সামঞ্জস্য রেখে স্টাইলিং আপডেট করা হয়েছে।
    • ভ্যালু লেবেলটি এখন ডিফল্টরূপে লুকানো থাকে, যদিও app:showSeekBarValue="true" অথবা setShowSeekBarValue(true) ব্যবহার করে এটি এখনও দেখানো যেতে পারে। এই লেবেলটি ম্যাটেরিয়াল স্পেসিফিকেশনের অংশ নয়, কিন্তু আমরা জানি যে এটি ব্যাপকভাবে ব্যবহৃত হয়, তাই আমরা এর সাপোর্ট অব্যাহত রাখব – যদিও আমরা এটি ব্যবহার করার পরামর্শ দিই না।
    • এখন থেকে সিকবারটি ছেড়ে দেওয়ার পরিবর্তে, ড্র্যাগ করার সময়েই ভ্যালু লেবেলটি আপডেট হবে। উল্লেখ্য যে, এর মানে এই নয় যে ভ্যালুটি অভ্যন্তরীণভাবে আপডেট হবে; এই কার্যকারিতাটি চালু করার জন্য নিচের নতুন এপিআইটি দেখুন।
    • দ্রষ্টব্য: যদিও এটি সমর্থিত, আপনার SeekBarPreference-এ সামারি সেট করা থেকে বিরত থাকা উচিত, কারণ এটি উদ্দিষ্ট নয় এবং Material স্পেসিফিকেশনের অংশও নয়।
  • ক্রমাগত আপডেটের সুবিধা যোগ করে, যার ফলে SeekBar ড্র্যাগ করার সময়েও এর সংরক্ষিত মান আপডেট হতে পারে। এটি XML থেকে অথবা প্রোগ্রাম্যাটিকভাবে, app:updatesContinuously="true" বা setUpdatesContinuously(true) ব্যবহার করে সক্রিয় করা যায়। স্ক্রিনে SeekBar-এর অবস্থান পরিবর্তন হলেই এটি কার্যকর হবে।

এপিআই পরিবর্তন

  • findPreference() ফাংশনে অনুপস্থিত nullability অ্যানোটেশন যোগ করে।

বাগ সংশোধন

  • একটি বাগ সংশোধন করা হয়েছে যেখানে কপি করা সক্ষম না থাকলে কনটেক্সট মেনু লিসেনারগুলি সঠিকভাবে সরানো হচ্ছিল না।

সংস্করণ 1.1.0-alpha03

৭ ফেব্রুয়ারি, ২০১৯

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

১৭ ডিসেম্বর, ২০১৮

অনুগ্রহ করে সম্প্রতি আপডেট করা সেটিংস গাইড এবং নমুনা অ্যাপটিও দেখে নিন।

নতুন বৈশিষ্ট্য

  • EditTextPreference.OnBindEditTextListener ইন্টারফেসটি যোগ করা হয়েছে। এর ফলে ডায়ালগটি বাইন্ড হওয়ার পর সংশ্লিষ্ট ডায়ালগে প্রদর্শিত EditText-কে কাস্টমাইজ করা যায়। উদাহরণস্বরূপ, একটি কাস্টম ইনপুট টাইপ / দৈর্ঘ্য সেট করা বা একটি TextWatcher যোগ করা।

  • Preference.setCopyingEnabled() যোগ করা হয়েছে। এটি সেট করা থাকলে, Preference-এর উপর লং প্রেস করলে একটি কনটেক্সট মেনু দেখা যাবে, যা Preference-টির সারাংশ কপি করার সুযোগ দেবে। এটি ব্যবহারকারী-নির্দিষ্ট আইডি / অ্যাপ্লিকেশন ভার্সন তথ্যের মতো স্ট্যাটিক তথ্য কপি করার জন্য ব্যবহার করা যেতে পারে।

  • preferenceTheme এখন অ্যাক্টিভিটি থিমে প্রয়োগ করা হয়। এর মানে হলো, কোড থেকে কোনো প্রেফারেন্স তৈরি করার সময়, আপনাকে আর PreferenceManager#getContext() থেকে কনটেক্সট ব্যবহার করতে হবে না — আপনি সরাসরি আপনার Fragment/Activity-এর কনটেক্সট ব্যবহার করতে পারবেন।

এপিআই পরিবর্তন

  • findPreference() রিফ্যাক্টর করে <T extends Preference> রিটার্ন করার জন্য তৈরি করা হয়েছে। এর মানে হলো, `findPreference()` ব্যবহার করার সময় আপনাকে আর প্রেফারেন্সগুলোকে আলাদাভাবে কাস্ট করতে হবে না। উদাহরণস্বরূপ, EditTextPreference preference = findPreference(“edit_text”) এখন একটি বৈধ কোড।

সংস্করণ 1.1.0-alpha01

৫ নভেম্বর, ২০১৮

নতুন বৈশিষ্ট্য

  • এখন আপনি কোনো প্রেফারেন্সে একটি সামারিপ্রোভাইডার সেট করতে পারেন, যাতে প্রেফারেন্সটি আপডেট হলে বা ব্যবহারকারীর কাছে দৃশ্যমান হলে এর সামারিটি ডাইনামিকভাবে কনফিগার হয়ে যায়।
  • ListPreference এবং EditTextPreference-এর জন্য ডিফল্ট SummaryProvider ইমপ্লিমেন্টেশন যোগ করা হয়েছে, যা সেট করা হলে Preference-এর সামারি স্বয়ংক্রিয়ভাবে আপডেট করে এর সংরক্ষিত মান প্রতিফলিত করবে, অথবা কোনো মান সংরক্ষিত না থাকলে 'Not Set' দেখাবে। এগুলো app:useSimpleSummaryProvider=”true” দিয়ে সেট করা যাবে।
  • PreferenceGroup#removePreferenceRecursively যোগ করা হয়েছে, যা রিকার্সিভভাবে গ্রুপ থেকে, অথবা হায়ারার্কির নিচের স্তরে থাকা কোনো নেস্টেড গ্রুপ থেকে একটি প্রেফারেন্স খুঁজে বের করে এবং মুছে ফেলে।

এপিআই পরিবর্তন

  • PreferenceFragment এবং ফ্রেমওয়ার্ক Fragments ব্যবহারকারী অন্যান্য ক্লাসগুলো অপ্রচলিত হয়ে গেছে - এর পরিবর্তে আপনার PreferenceFragmentCompat এবং অন্যান্য কম্প্যাট ক্লাস ব্যবহার করা উচিত।

বাগ সংশোধন

  • PreferenceCategories-এর সাথে iconSpaceReserved সঠিকভাবে কাজ না করার সমস্যাটি সমাধান করা হয়েছে।
  • API 21-এর নিচের সংস্করণগুলোতে যে PreferenceCategories-গুলো তাদের শিরোনামের রঙে colorAccent ব্যবহার করছিল না, সেগুলোকে ঠিক করা হয়েছে।
  • API 21-এর নিচের SeekBarPreference লেআউটের কিছু অসঙ্গতি সংশোধন করা হয়েছে।