Tercih bileşenleri ve özellikleri Android Jetpack'in bir parçasıdır.

Bu bölümde, ayarlar ekranı oluştururken en yaygın kullanılan Preference bileşenleri ve özelliklerinden bazıları açıklanmaktadır.

Tercih bileşenleri

Bu bölümde yaygın Preference bileşenleri açıklanmaktadır. Daha fazla bilgi için her bileşenin ilgili referans sayfalarına bakın.

Tercih edilen altyapı

PreferenceFragmentCompat: Preference nesnelerinin etkileşimli bir hiyerarşisini görüntülemeyi işleyen bir Fragment.

Tercih kapsayıcıları

PreferenceScreen: Ayarlar ekranını temsil eden üst düzey bir kapsayıcıdır. Bu, Preference hiyerarşinizin kök bileşenidir.

PreferenceCategory: Benzer Preferences öğelerini gruplandırmak için kullanılan bir kapsayıcıdır. PreferenceCategory, bir kategori başlığı görüntüler ve Preferences gruplarını görsel olarak ayırır.

Bireysel Tercihler

Preference - Tek bir ayarı temsil eden temel yapı taşı. Preference politikası kalıcı olacak şekilde ayarlanırsa kullanıcının ayar için seçimini taşıyan ve uygulamanın başka bir yerinden erişilebilen bir anahtar/değer çifti bulunur.

EditTextPreference: String değerinde kalmaya devam eden bir Preference. Kullanıcılar Preference simgesine dokunarak kullanıcının kalıcı değeri değiştirmesine izin veren metin alanını içeren bir iletişim kutusunu başlatabilir.

ListPreference: Dize değerini koruyan bir Preference. Kullanıcılar bu değeri, karşılık gelen etiketlerin bulunduğu radyo düğmelerinin listesini içeren bir iletişim kutusunda değiştirebilir.

MultiSelectListPreference: Bir Dize grubunu devam ettiren bir Preference. Kullanıcılar bu değerleri, karşılık gelen etiketlerin bulunduğu onay kutuları listesini içeren bir iletişim kutusunda değiştirebilir.

SeekBarPreference: Değerde tam sayı olarak kalmaya devam eden bir Preference. Bu değer, Preference düzeninde görüntülenen karşılık gelen bir arama çubuğunun sürüklenmesiyle değiştirilebilir.

SwitchPreferenceCompat: Boole değerini koruyan Preference. Bu değer, ilgili anahtar widget'ıyla etkileşimde bulunarak veya Preference düzenine dokunarak değiştirilebilir.

CheckBoxPreference: Boole değerini koruyan Preference. Bu değer, ilgili onay kutusuyla etkileşim kurarak veya Preference düzenine dokunarak değiştirilebilir.

Tercih özellikleri

Aşağıda, Preference görünümünü ve davranışını yapılandıran en yaygın olarak kullanılan özelliklerden bazıları listelenmiştir.

Genel özellikler

title

Preference başlığını temsil eden String değeri.

Örnek: app:title="Title"

summary

Preference özetini temsil eden String değeri.

Örnek: app:summary="Summary"

icon

Preference simgesini temsil eden bir Drawable.

Örnek: app:icon="@drawable/ic_camera"

key

İlişkili Preference değerini korumak için kullanılan anahtarı temsil eden String değeri. Bir anahtar, çalışma zamanı boyunca Preference öğesini daha da özelleştirmenize olanak tanır. Hiyerarşinizdeki her Preference için bir anahtar ayarlamanız gerekir.

Örnek: app:key="key"

enabled

Kullanıcıların Preference ile etkileşimde bulunup bulunamayacağını gösteren boole değeridir. Bu değer false olduğunda Preference devre dışı görünür ve kullanıcılar bu değerle etkileşimde bulunamaz. Varsayılan değer: true.

Örnek: app:enabled="false"

selectable

Kullanıcıların Preference ile etkileşimde bulunup bulunamayacağını gösteren boole değeridir. Varsayılan değer: true.

Örnek: app:selectable="false"

isPreferenceVisible

Bir Preference veya Preference kategorisinin görünür olup olmadığını belirten boole değeridir. Bu, setVisible() çağırmaya eşdeğerdir.

Örnek: app:isPreferenceVisible="false"

defaultValue

Preference için varsayılan değeri temsil eder. Bu Preference için kalıcı başka bir değer bulunamadığında bu değer ayarlanır ve sürdürülür. Değer türü, ilişkili Preference öğesine bağlıdır.

Örnek: app:defaultValue="true"

dependency

Bu Preference öğesinin durumunu kontrol eden bir SwitchPreferenceCompat anahtarını temsil eder. İlgili anahtar kapatıldığında bu Preference devre dışı bırakılır ve değiştirilemez.

Örnek: app:dependency="parent"

PreferenceCategory özellikleri

initialExpandedChildrenCount

Genişletilebilir Preference davranışını etkinleştiren bir tam sayı değeridir. Bu değer, PreferenceGroup içinde gösterilecek maksimum alt öğe sayısını temsil eder. Fazladan olan alt öğeler daraltılır ve genişletme düğmesine dokunarak gösterilebilir. Varsayılan olarak, bu değer Integer.MAX_VALUE şeklindedir ve tüm alt öğeler gösterilir.

Uyarı: Bu özelliği kullanıyorsanız yapılandırma değiştiğinde (ör. ekranı döndürürken) durumun doğru şekilde kaydedilip geri yüklenmesi için PreferenceCategory öğesinde bir anahtar ayarladığınızdan emin olun.

Örnek: app:initialExpandedChildrenCount="0"

ListPreference / MultiSelectListPreference özellikleri

entries

Kullanıcıya gösterilecek liste girişlerine karşılık gelen bir Dize dizisi. Bu değerlerin her biri, dizine göre dahili olarak kalıcı değerler dizisine karşılık gelir. Örneğin, bir kullanıcı ilk liste girişini seçtiğinde, karşılık gelen değer dizisindeki ilk öğe korunur.

Örnek: app:entries="@array/entries"

Uyarı: Her iki dizinin uzunluğunun aynı olduğundan ve her dizinin dizinlerinin doğru giriş / değer çiftiyle eşleştiğinden emin olun.

entryValues

Korunacak giriş dizisi. Bu değerlerin her biri, dizine göre kullanıcıya gösterilen liste girişleri dizisine karşılık gelir.

Örnek: app:entryValues="@array/values"