2009-12-27 11 views
32

Jak zrobić te standardowe etykiety nagłówka w kontroli ListView?Android ListView Główki

Przykładem może być w aplikacji Kontakty można zobaczyć pierwszą literę zgrupowanych kontaktów dla każdej litery w alfabecie.

Jeśli to możliwe, należy podać pewne fragmenty kodu na temat sposobu konstruowania pogrupowanych danych i wyświetlanie ListView.

Odpowiedz

33

Możesz użyć do tego mojego MergeAdapter lub Jeffa Sharkeya SeparatedListAdapter.

W przypadku MergeAdapter, należy dodać zwykły View (np TextView) dla nagłówka sekcji, wówczas Adapter za treść tej sekcji. Pójdź, spłucz, powtórz.

+3

Czy jest to standardowa metodologia używana przez Google w swoich aplikacjach? Widziałem, że było kilka niestandardowych implementacji, ale wydawało się, że ten rodzaj pracy zostałby zintegrowany z API w tym momencie. Większość niestandardowych implementacji widziałem dla Androida 0.9. –

+1

"Czy jest to standardowa metodologia używana przez Google w swoich aplikacjach?" Nie mam pojęcia. Będziesz musiał spojrzeć na ich kod źródłowy na http://source.android.com. "ale wydawało się, że ten rodzaj pracy zostałby zintegrowany z API w tym momencie" Poza systemem preferencji nie ma nic wbudowanego w Androida, który zapewnia API do nagłówków sekcji. Implementacja Jeffa Sharkeya była pierwotnie dla 0.9, ale prawdopodobnie nadal działa; moje dwie implementacje pracują w wersji 2.0.1. – CommonsWare

+0

Link do przekreślonego Adaptatora wydaje się być uszkodzony. Wszystko, co jest w folderze ListView, to HeaderFooter, \t RateListView i Selector. – Diederik