2010-01-08 15 views
61

Pracuję nad moją pierwszą aplikacją na Androida i chciałbym utworzyć ekran ustawień.Korzystanie z ListView do tworzenia ekranu ustawień w systemie Android?

Chciałbym, aby ekran miał podobny wygląd i wygląd jak ekrany ustawień telefonu i natywny ekran "tworzenie/edytowanie alarmu". Tak więc z różnymi rodzajami (statycznie zdefiniowanymi) pozycji pionowo ułożonych cienką linią między nimi.

Jak zdefiniować taki ekran?

Rozumiem, że mogę korzystać z ListView, ale wydaje się, że jest to głównie przeznaczone do udostępniania dynamicznych danych przy użyciu ListAdapter, gdzie każdy element jest obsługiwany w tym samym formacie. Wydaje się, że możliwe jest tworzenie różnych elementów (to jest niektórych z polami wyboru, niektóre z dwoma liniami tekstowymi, niektóre z ikonami) poprzez utworzenie własnego ListAdaptera i nadpisanie getView, ale wydaje się to przesadą. Czy powinienem używać ListView do tego celu?

Odpowiedz

120

Nie ma potrzeby ręcznego tworzenia i formatowania ListView - istnieją sposoby w interfejsie API do tworzenia ekranów preferencji.

Najbardziej oczywistym jest PreferenceActivity.

Można zdefiniować wszystkie swoje preferencje w pliku XML, trochę jak w układzie, a następnie załadować je z addPreferencesFromResource() lub można utworzyć szereg PreferenceScreen obiektów w kodzie i wypełnić je z obiektami tamtędy Preference.

Najlepiej byłoby przyjrzeć się aplikacji demonstracyjnej API dostarczonej z interfejsem API systemu Android. Zawiera wiele dobrych przykładów zarządzania preferencjami. Oto how it creates preferences from code i tutaj jest a sample preferences XML file. Istnieją inne przykłady pokazujące bardziej zaawansowane rzeczy, takie jak zależności preferencji i preferencje słuchaczy.

+1

dzięki! Tęskniłem za tym. – Tomas

+0

Bardzo dobrze, dzięki! – Kon

+2

Preferencje z linku do kodu należy zaktualizować do: http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/preference/PreferencesFromCode.html – beetstra

2

Właściwie we wbudowanej aplikacji alarmowej dla edycji i tworzyć alarmy, istnieją dwa działania, po jednym dla tworzyć i jeden dla edycji.

Aktywność Utwórz alarm jest pierwszym z zegarem cyfrowym. Czynność edycji alarmuEdycja alarmujest uruchamiana przez kliknięcie na alarm z listy Utwórz alarm.

Edit Alarm realizuje PreferenceActivity, ale Tworzenie Alarm jest bardziej złożona (adapter zwyczaj kursor do listy alarmów).

Wystarczy popatrzeć na sources:

Powiązane problemy