مشخصه‌ها و مؤلفه‌های اولویت   بخشی از 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"

مشخصه‌های PreferenceCategory

initialExpandedChildrenCount

مقدار عدد صحیحی که رفتار Preference گسترش‌پذیر را فعال می‌کند. این مقدار نشان‌دهنده حداکثر تعداد فرزندانی است که در PreferenceGroup نشان داده می‌شود. هر فرزند اضافی جمع می‌شود و می‌توان با تک‌ضرب زدن روی دکمه ازهم باز کردن آن‌ها را نشان داد. به‌طور پیش‌فرض، این مقدار Integer.MAX_VALUE است و همه فرزندان نشان داده می‌شوند.

هشدار: مطمئن شوید که درصورت استفاده از این ویژگی، کلیدی را در PreferenceCategory تنظیم کنید تا هنگام تغییر پیکربندی (مثلاً هنگام چرخاندن صفحه‌نمایش)، وضعیت به‌درستی ذخیره و بازیابی شود.

مثال: app:initialExpandedChildrenCount="0"

مشخصه‌های ListPreference / MultiSelectListPreference

entries

آرایه‌ای از رشته‌ها که با ورودی‌های فهرست برای نمایش به کاربر مطابقت دارد. هریک از این مقادیر با نمایه به آرایه مقادیری که به‌طور داخلی حفظ می‌شوند مربوط است. برای مثال، وقتی کاربر اولین ورودی فهرست را انتخاب می‌کند، اولین عنصر در آرایه مقادیر مربوطه حفظ می‌شود.

مثال: app:entries="@array/entries"

هشدار: مطمئن شوید طول هر دو آرایه یکسان باشد و نمایه‌های هر آرایه با جفت ورودی / مقدار صحیح مطابقت داشته باشد.

entryValues

آرایه ورودی‌هایی که باید حفظ شوند. هرکدام از این مقادیر با نمایه به آرایه ورودی‌های فهرست که به کاربر نمایش داده می‌شود مطابقت دارد.

مثال: app:entryValues="@array/values"