Widoki RecyclerView i CardView
539
jesteś tutaj
Widoki RecyclerView z wysokości 3000 metrów
Zanim zajmiemy się pisaniem kodu, warto przyjrzeć się sposobowi działania
widoków
RecyclerView
. Ponieważ są one bardziej elastyczne od zwyczajnych
widoków list, konfigurowanie ich jest znacznie bardziej złożone.
Podobnie jak listy, także i widoki
RecyclerView
potrafią wydajnie zarządzać
niewielką liczbą innych widoków, prezentując je w formie dużej kolekcji widoków
przekraczającej rozmiary ekranu. Zapewniają przy tym większą elastyczność pod
względem sposobu wyświetlania danych niż widoki list.
Widok
RecyclerView
odwołuje się do danych za pośrednictwem
adaptera
.
Jednak w odróżnieniu od widoku listy
RecyclerView
nie używa do tego
wbudowanych adapterów, takich jak adapter operujący na tablicach. Zamiast
tego to
twórca aplikacji musi napisać własny adapter, dostosowany do używanych
danych
. Implementacja takiego adaptera obejmuje określenie typu danych,
stworzenie odpowiednich widoków do wyświetlenia tych danych oraz powiązania
danych z widokami.
Poszczególne elementy widoku
RecyclerView
są rozmieszczane przy użyciu
menedżera układu
. Istnieje cała grupa wbudowanych menedżerów, których można
używać, pozwalających na rozmieszczanie elementów w formie listy lub siatki.
Poniższy schemat przedstawia wszystkie te elementy i ich wzajemne powiązania:
Źródło
danych
Widok
Recycler
View
Adapter
To są dane
używane
w widoku
RecyclerView.
Musisz napisać własny
adapter. To właśnie on jest
najbardziej pracochłonny.
Widok RecyclerView
używa adaptera do
wyświetlania danych.
Korzysta przy tym
także z menedżera
układu, który określa,
jak poszczególne
dane mają być
rozmieszczone.
W naszej przykładowej aplikacji przygotujemy widok
RecyclerView
, który
będzie wyświetlał nazwy i zdjęcia pizz. Na następnej stronie dokładnie
przeanalizujemy poszczególne czynności, które będziemy musieli wykonać.
540
Rozdział 13.
Etapy
Planujemy zaktualizowanie
aplikacji Włoskie Co Nieco,
więc otwórz jej projekt
w Android Studio.
Oto co mamy zamiar zrobić
Uruchomienie widoku
RecyclerView
składa się z pięciu
podstawowych etapów:
Dodania do projektu danych pizz.
Do naszej aplikacji dodamy zdjęcia pizz oraz nową klasę,
Pizza
.
Ta klasa będzie źródłem danych używanym przez widok
RecyclerView
.
Pierwszą rzeczą, którą się zajmiemy, będzie dodanie do aplikacji danych pizz.
Utworzenia widoku CardView, prezentującego dane pizzy.
Sprawimy, że każda pizza w widoku
RecyclerView
będzie wyglądała,
jakby była prezentowana na odrębnej karcie. Zastosujemy do tego
nowy typ widoku —
CardView
, widok karty.
Utworzenia adaptera widoku RecyclerView.
Zgodnie z tym, co napisaliśmy na poprzedniej stronie, w przypadku
stosowania widoku
RecyclerView
konieczne jest napisanie własnego
adaptera na jego potrzeby. Nasz adapter musi pobierać dane pizzy
i kojarzyć je z widokiem karty. Każda z tych kart będzie mogła być
wyświetlana w widoku
RecyclerView
.
Dodania widoku RecyclerView do fragmentu PizzaFragment.
Po zaimplementowaniu adaptera dodamy widok
RecyclerView
do fragmentu
PizzaFragment
. Zagwarantujemy przy tym, że
widok będzie używał naszego adaptera oraz menedżera układu
prezentującego dane pizz w dwóch kolumnach.
Zaimplementowania reakcji na kliknięcia w widoku RecyclerView.
Zaimplementujemy nową aktywność,
PizzaDetailActivity
,
i sprawimy, że będzie ona uruchamiana, gdy użytkownik kliknie jedną
z pizz na liście. Aktywność ta będzie prezentować dane wybranej pizzy.
To jest aktywność
PizzaDetailActivity.
To jest widok
RecyclerView.
To są widoki CardView,
prezentujące dane pizz.
Zrób to sam!
1
2
3
4
5
Get Android Programowanie aplikacji. Rusz głową! Wydanie II now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.