Komponenty i atrybuty preferencji Część stanowiąca część Androida Jetpack.
W tym artykule omawiamy niektóre z najczęściej używanych komponentów i atrybutów Preference podczas tworzenia ekranu ustawień.
Komponenty preferencji
W tej sekcji opisujemy typowe komponenty Preference. Więcej informacji znajdziesz na odpowiednich stronach referencyjnych dotyczących poszczególnych komponentów.
Infrastruktura preferencji
PreferenceFragmentCompat – Fragment, który obsługuje wyświetlanie interaktywnej hierarchii Preference obiektów.
Kontenery preferencji
PreferenceScreen – kontener najwyższego poziomu, który reprezentuje ekran ustawień. Jest to główny komponent hierarchii Preference.
PreferenceCategory – kontener służący do grupowania podobnych elementów Preferences. Element PreferenceCategory wyświetla tytuł kategorii i graficznie oddziela grupy Preferences.
Preferencje indywidualne
Preference – podstawowy element składowy danego ustawienia. Jeśli zasada Preference jest skonfigurowana jako trwała, ma odpowiednią parę klucz-wartość, która określa wybór użytkownika dotyczący ustawienia, do którego dostęp można uzyskać w innym miejscu aplikacji.
EditTextPreference – Preference, który pozostaje wartością String. Użytkownicy mogą kliknąć Preference, aby otworzyć okno zawierające pole tekstowe, w którym można zmienić trwałą wartość.
ListPreference – adres Preference, który zawiera wartość ciągu znaków. Użytkownicy mogą zmienić tę wartość w oknie zawierającym listę przycisków z odpowiednimi etykietami.
MultiSelectListPreference – Preference, który utrzymuje się w zestawie ciągów znaków. Użytkownicy mogą zmienić te wartości w oknie zawierającym listę pól wyboru z odpowiadającymi im etykietami.
SeekBarPreference – Preference, który pozostaje liczbą całkowitą. Możesz ją zmienić, przeciągając odpowiedni pasek przewijania widoczny w układzie Preference.
SwitchPreferenceCompat – Preference, który pozostaje wartością logiczną. Tę wartość możesz zmienić, klikając odpowiedni widżet przełącznika lub klikając układ Preference.
CheckBoxPreference – Preference, który pozostaje wartością logiczną. Tę wartość możesz zmienić, klikając odpowiednie pole wyboru lub klikając układ Preference.
Atrybuty ustawień
Poniżej znajdziesz najczęściej używane atrybuty do konfigurowania wyglądu i działania Preference.
Atrybuty ogólne
-
title -
Wartość
Stringreprezentująca tytuł elementuPreference.Przykład:
app:title="Title" -
summary -
Wartość
Stringreprezentująca podsumowaniePreference.Przykład:
app:summary="Summary" -
icon -
Element
Drawablereprezentujący ikonęPreference.Przykład:
app:icon="@drawable/ic_camera" -
key -
Wartość
Stringreprezentująca klucz używany do utrzymania wartości powiązanej wartościPreference. Klucz umożliwia dodatkowe dostosowanie obiektuPreferencew czasie działania. Ustaw klucz dla każdego elementuPreferencew hierarchii.Przykład:
app:key="key" -
enabled -
Wartość logiczna wskazująca, czy użytkownicy mogą korzystać z interfejsu
Preference. Gdy ta wartość ma wartośćfalse, elementPreferencejest wyszarzony i użytkownicy nie mogą z niej korzystać. Wartością domyślną jesttrue.Przykład:
app:enabled="false" -
selectable -
Wartość logiczna wskazująca, czy użytkownicy mogą korzystać z interfejsu
Preference. Wartością domyślną jesttrue.Przykład:
app:selectable="false" -
isPreferenceVisible -
Wartość logiczna wskazująca, czy kategoria
PreferenceczyPreferencejest widoczna. Jest to równoważne wywołaniu funkcjisetVisible().Przykład:
app:isPreferenceVisible="false" -
defaultValue -
Reprezentuje wartość domyślną elementu
Preference. Ta wartość jest ustawiona i utrzymywana, gdy nie znaleziono żadnej innej trwałej wartości dla tego parametruPreference. Typ wartości zależy od powiązanej wartościPreference.Przykład:
app:defaultValue="true" -
dependency -
Reprezentuje klucz
SwitchPreferenceCompat, który kontroluje stan obiektuPreference. Gdy odpowiedni przełącznik jest wyłączony, tenPreferencejest wyłączony i nie można go zmienić.Przykład:
app:dependency="parent"
Atrybuty PreferenceCategory
-
initialExpandedChildrenCount -
Wartość całkowita, która umożliwia działanie rozwijanych elementów
Preference. Ta wartość reprezentuje maksymalną liczbę elementów podrzędnych do wyświetlenia w:PreferenceGroup. Wszystkie dodatkowe elementy podrzędne są zwinięte i można je wyświetlić, klikając przycisk rozwijania. Domyślnie ta wartość wynosiInteger.MAX_VALUEi są widoczne wszystkie elementy podrzędne.Ostrzeżenie: jeśli używasz tego atrybutu, ustaw klucz w
PreferenceCategory, aby zapewnić prawidłowe zapisywanie i przywracanie stanu po zmianie konfiguracji (np. podczas obracania ekranu).Przykład:
app:initialExpandedChildrenCount="0"
Atrybuty ListPreference / MultiSelectListPreference
-
entries -
Tablica ciągów znaków odpowiadająca wpisom na liście, które mają być wyświetlane użytkownikowi. Każda z tych wartości odpowiada indeksowi tablicy wartości, które są przechowywane wewnętrznie. Jeśli na przykład użytkownik wybierze pierwszą pozycję na liście, zostanie zachowany pierwszy element w odpowiedniej tablicy wartości.
Przykład:
app:entries="@array/entries"Ostrzeżenie: upewnij się, że długość obu tablic jest taka sama, a indeksy każdej tablicy są zgodne z prawidłową parą wpis / wartość.
-
entryValues -
Tablica wpisów do utrwalenia. Każda z tych wartości odpowiada indeksowi tablicy wpisów na liście wyświetlanych użytkownikowi.
Przykład:
app:entryValues="@array/values"