רכיבים ומאפיינים של העדפות חלק מ-Android Jetpack.
בנושא הזה מתוארים כמה מהרכיבים הנפוצים ביותר של Preference
וגם
ששימשו ליצירת מסך הגדרות.
רכיבי ההעדפות
בקטע הזה מתוארים רכיבים נפוצים של Preference
. מידע נוסף זמין במאמר הבא:
את דפי העזר המתאימים לכל רכיב.
תשתית של העדפות
PreferenceFragmentCompat
–
Fragment
שמטפל
שבה מוצגת היררכיה אינטראקטיבית של Preference
אובייקטים.
מאגרי העדפות
PreferenceScreen
–
מאגר ברמה העליונה שמייצג מסך הגדרות. זהו השורש
רכיב בהיררכיה של Preference
.
PreferenceCategory
–
קונטיינר שמשמש לקיבוץ דומה של Preferences
. PreferenceCategory
מציגה כותרת קטגוריה ומפרידה באופן חזותי קבוצות של Preferences
.
העדפות אישיות
Preference
– התוכנית הבסיסית
אבן בניין שמייצגת הגדרה אינדיבידואלית. אם מוגדר Preference
עקבי, יש לו צמד מפתח/ערך תואם שכולל את הבחירה של המשתמש
להגדרה שניתן לגשת אליה מכל מקום אחר באפליקציה.
EditTextPreference
–
ערך של Preference
שנשאר עם הערך String
. המשתמשים יכולים להקיש על Preference
כדי להפעיל תיבת דו-שיח שמכילה את שדה הטקסט שמאפשר למשתמש לשנות את
קבוע.
ListPreference
– a
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"