পছন্দের উপাদান এবং গুণাবলী Android Jetpack এর অংশ।

এই বিষয়টি একটি সেটিংস স্ক্রীন তৈরি করার সময় ব্যবহৃত কিছু সাধারণভাবে ব্যবহৃত Preference উপাদান এবং বৈশিষ্ট্যগুলি বর্ণনা করে।

পছন্দ উপাদান

এই বিভাগটি সাধারণ Preference উপাদানগুলি বর্ণনা করে। আরও তথ্যের জন্য, প্রতিটি উপাদানের জন্য সংশ্লিষ্ট রেফারেন্স পৃষ্ঠাগুলি দেখুন।

অগ্রাধিকার অবকাঠামো

PreferenceFragmentCompat - একটি Fragment যা Preference বস্তুর একটি ইন্টারেক্টিভ শ্রেণিবিন্যাস প্রদর্শন পরিচালনা করে।

পছন্দ পাত্রে

PreferenceScreen - একটি শীর্ষ-স্তরের ধারক যা একটি সেটিংস স্ক্রীনকে উপস্থাপন করে। এটি আপনার Preference অনুক্রমের মূল উপাদান।

PreferenceCategory - একটি ধারক যা অনুরূপ Preferences গোষ্ঠীবদ্ধ করতে ব্যবহৃত হয়। একটি PreferenceCategory একটি বিভাগের শিরোনাম প্রদর্শন করে এবং দৃশ্যত Preferences গোষ্ঠীগুলিকে আলাদা করে।

ব্যক্তিগত পছন্দ

Preference - মৌলিক বিল্ডিং ব্লক যা একটি পৃথক সেটিং প্রতিনিধিত্ব করে। যদি একটি Preference স্থির থাকার জন্য সেট করা থাকে, তাহলে এটিতে একটি সংশ্লিষ্ট কী-মান জোড়া থাকে যা অ্যাপ্লিকেশনের অন্য কোথাও অ্যাক্সেস করা যায় এমন সেটিংটির জন্য ব্যবহারকারীর পছন্দকে ধরে রাখে।

EditTextPreference - একটি Preference যা একটি String মান বজায় রাখে। ব্যবহারকারীরা টেক্সট ক্ষেত্র সমন্বিত একটি ডায়ালগ চালু করতে Preference ট্যাপ করতে পারেন যা ব্যবহারকারীকে স্থায়ী মান পরিবর্তন করতে দেয়।

ListPreference - একটি Preference যা একটি স্ট্রিং মান বজায় রাখে। ব্যবহারকারীরা একটি ডায়ালগে এই মানটি পরিবর্তন করতে পারেন যাতে সংশ্লিষ্ট লেবেল সহ রেডিও বোতামগুলির একটি তালিকা রয়েছে৷

MultiSelectListPreference - একটি Preference যা স্ট্রিংগুলির একটি সেট বজায় রাখে। ব্যবহারকারীরা একটি ডায়ালগে এই মানগুলি পরিবর্তন করতে পারেন যাতে সংশ্লিষ্ট লেবেল সহ চেকবক্সগুলির একটি তালিকা থাকে৷

SeekBarPreference - একটি Preference যা একটি পূর্ণসংখ্যা মান বজায় রাখে। Preference লেআউটে প্রদর্শিত একটি সংশ্লিষ্ট সিকবার টেনে এই মান পরিবর্তন করা যেতে পারে।

SwitchPreferenceCompat - একটি Preference যা একটি বুলিয়ান মান বজায় রাখে। এই মানটি সংশ্লিষ্ট সুইচ উইজেটের সাথে ইন্টারঅ্যাক্ট করে বা Preference লেআউটে ট্যাপ করে পরিবর্তন করা যেতে পারে।

CheckBoxPreference - একটি Preference যা একটি বুলিয়ান মান বজায় রাখে। এই মানটি সংশ্লিষ্ট চেকবক্সের সাথে ইন্টারঅ্যাক্ট করে বা Preference লেআউটে ট্যাপ করে পরিবর্তন করা যেতে পারে।

পছন্দ বৈশিষ্ট্য

নীচে তালিকাভুক্ত করা হল সবচেয়ে বেশি ব্যবহৃত কিছু বৈশিষ্ট্য যা Preference চেহারা এবং আচরণ কনফিগার করে।

সাধারণ গুণাবলী

title

একটি String মান যা Preference শিরোনামকে উপস্থাপন করে।

উদাহরণ: app:title="Title"

summary

একটি String মান যা Preference সারাংশকে উপস্থাপন করে।

উদাহরণ: app:summary="Summary"

icon

একটি Drawable যা Preference আইকনকে প্রতিনিধিত্ব করে।

উদাহরণ: app:icon="@drawable/ic_camera"

key

একটি String মান যা কী প্রতিনিধিত্ব করে যা সংশ্লিষ্ট Preference মান বজায় রাখতে ব্যবহৃত হয়। একটি কী আপনাকে রানটাইমের সময় Preference আরও কাস্টমাইজ করতে দেয়। আপনার অনুক্রমের প্রতিটি Preference জন্য একটি কী সেট করা উচিত।

উদাহরণ: app:key="key"

enabled

একটি বুলিয়ান মান যা নির্দেশ করে ব্যবহারকারীরা Preference সাথে ইন্টারঅ্যাক্ট করতে পারে কিনা। যখন এই মানটি false হয়, তখন Preference ধূসর দেখায় এবং ব্যবহারকারীরা এটির সাথে যোগাযোগ করতে পারে না। ডিফল্ট মান true

উদাহরণ: app:enabled="false"

selectable

একটি বুলিয়ান মান যা নির্দেশ করে ব্যবহারকারীরা Preference সাথে ইন্টারঅ্যাক্ট করতে পারে কিনা। ডিফল্ট মান true

উদাহরণ: app:selectable="false"

isPreferenceVisible

একটি বুলিয়ান মান যা নির্দেশ করে যে একটি Preference বা Preference বিভাগ দৃশ্যমান কিনা। এটি setVisible() কল করার সমতুল্য।

উদাহরণ: app:isPreferenceVisible="false"

defaultValue

একটি Preference জন্য ডিফল্ট মান প্রতিনিধিত্ব করে। এই মানটি সেট করা হয় এবং স্থায়ী হয় যখন এই Preference জন্য অন্য কোন স্থায়ী মান পাওয়া যায় না। মান প্রকার নির্ভর করে সংশ্লিষ্ট Preference উপর।

উদাহরণ: app:defaultValue="true"

dependency

একটি SwitchPreferenceCompat এর কী প্রতিনিধিত্ব করে যা এই Preference অবস্থা নিয়ন্ত্রণ করে। যখন সংশ্লিষ্ট সুইচটি বন্ধ থাকে, তখন এই Preference নিষ্ক্রিয় থাকে এবং সংশোধন করা যায় না।

উদাহরণ: app:dependency="parent"

পছন্দশ্রেণীর গুণাবলী

initialExpandedChildrenCount

একটি পূর্ণসংখ্যা মান যা প্রসারণযোগ্য Preference আচরণ সক্ষম করে। এই মানটি PreferenceGroup এ দেখানোর জন্য সর্বাধিক সংখ্যক বাচ্চাদের প্রতিনিধিত্ব করে। যেকোন অতিরিক্ত শিশু আড়াল হয়ে গেছে এবং প্রসারিত বোতামে ট্যাপ করে দেখানো যেতে পারে। ডিফল্টরূপে, এই মানটি হল Integer.MAX_VALUE , এবং সমস্ত শিশু দেখানো হয়৷

সতর্কীকরণ: নিশ্চিত করুন যে আপনি এই বৈশিষ্ট্যটি ব্যবহার করলে PreferenceCategory এ একটি কী সেট করেছেন যাতে কনফিগারেশন পরিবর্তন হওয়ার সময় অবস্থা সঠিকভাবে সংরক্ষিত এবং পুনরুদ্ধার করা হয় (যেমন স্ক্রীন ঘোরানোর সময়)।

উদাহরণ: app:initialExpandedChildrenCount="0"

ListPreference / MultiSelectListPreference বৈশিষ্ট্য

entries

স্ট্রিংগুলির একটি অ্যারে যা ব্যবহারকারীর কাছে প্রদর্শিত তালিকার এন্ট্রিগুলির সাথে সম্পর্কিত৷ এই মানগুলির প্রতিটি অভ্যন্তরীণভাবে স্থির থাকা মানগুলির বিন্যাসের সাথে সূচকের সাথে মিলে যায়৷ উদাহরণস্বরূপ, যখন একজন ব্যবহারকারী প্রথম তালিকা এন্ট্রি নির্বাচন করে, তখন মানগুলির সংশ্লিষ্ট অ্যারের প্রথম উপাদানটি টিকে থাকে।

উদাহরণ: app:entries="@array/entries"

সতর্কতা: নিশ্চিত করুন যে উভয় অ্যারের দৈর্ঘ্য একই, এবং প্রতিটি অ্যারের সূচী সঠিক এন্ট্রি / মান জোড়ার সাথে মেলে।

entryValues

এন্ট্রির বিন্যাস টিকে থাকতে হবে। এই মানগুলির প্রতিটি ব্যবহারকারীর কাছে প্রদর্শিত তালিকা এন্ট্রির অ্যারের সাথে সূচী দ্বারা সঙ্গতিপূর্ণ।

উদাহরণ: app:entryValues="@array/values"