Udostępnij za pośrednictwem


RecyclerView

RecyclerView to grupa widoków do wyświetlania kolekcji; jest przeznaczony do bardziej elastycznego zastąpienia starszych grup widoków, takich jak ListView i GridView. W tym przewodniku wyjaśniono, jak używać i dostosowywać element RecyclerView w aplikacjach platformy Xamarin.Android.

RecyclerView

Wiele aplikacji musi wyświetlać kolekcje tego samego typu (takie jak wiadomości, kontakty, obrazy lub utwory); często ta kolekcja jest zbyt duża, aby zmieścić się na ekranie, więc kolekcja jest prezentowana w małym oknie, które może płynnie przewijać wszystkie elementy w kolekcji. RecyclerView to widżet systemu Android, który wyświetla kolekcję elementów na liście lub w siatce, umożliwiając użytkownikowi przewijanie kolekcji. Poniżej przedstawiono zrzut ekranu przykładowej aplikacji, która używa RecyclerView do wyświetlania zawartości skrzynki odbiorczej wiadomości e-mail na pionowej liście przewijania:

Przykładowa aplikacja używająca elementu RecyclerView do wyświetlania listy komunikatów skrzynki odbiorczej

RecyclerView oferuje dwie atrakcyjne funkcje:

  • Ma elastyczną architekturę, która umożliwia modyfikowanie jego zachowania przez podłączanie preferowanych składników.

  • Jest ona wydajna w przypadku dużych kolekcji, ponieważ ponownie używa widoków elementów i wymaga użycia posiadaczy widoków do buforowania odwołań do widoku.

W tym przewodniku wyjaśniono, jak używać RecyclerView w aplikacjach platformy Xamarin.Android. Wyjaśniono, jak dodać RecyclerView pakiet do projektu platformy Xamarin.Android i opisano sposób RecyclerView działania w typowej aplikacji. Podano przykłady rzeczywistego kodu, aby pokazać, jak zintegrować aplikację RecyclerView , jak zaimplementować kliknięcie widoku elementów i jak odświeżyć RecyclerView dane bazowe. W tym przewodniku założono, że znasz programowanie na platformie Xamarin.Android.

Wymagania

Chociaż RecyclerView jest często kojarzona z systemem Android 5.0 Lollipop, jest oferowana jako biblioteka pomocy technicznej — RecyclerView współpracuje z aplikacjami docelowymi na poziomie interfejsu API 7 (Android 2.1) i nowszymi wersjami. Do użycia w aplikacjach opartych na platformie Xamarin wymagane są następujące elementy RecyclerView :

  • Xamarin.Android — program Xamarin.Android 4.20 lub nowszy musi być zainstalowany i skonfigurowany przy użyciu programu Visual Studio lub Visual Studio dla komputerów Mac.

  • Projekt aplikacji musi zawierać pakiet Xamarin.Android.Support.v7.RecyclerView . Aby uzyskać więcej informacji na temat instalowania pakietów NuGet, zobacz Przewodnik: dołączanie pakietu NuGet w projekcie.

Omówienie

RecyclerView można traktować jako zamiennik widżetów ListView i GridView w systemie Android. Podobnie jak jego poprzedniki, RecyclerView jest przeznaczony do wyświetlania dużego zestawu danych w małym oknie, ale RecyclerView oferuje więcej opcji układu i jest lepiej zoptymalizowany pod kątem wyświetlania dużych kolekcji. Jeśli znasz program ListView, istnieje kilka ważnych różnic między elementami ListView i RecyclerView:

  • RecyclerView jest nieco bardziej skomplikowane do użycia: musisz napisać więcej kodu do użycia RecyclerView w porównaniu z ListView.

  • RecyclerView nie udostępnia wstępnie zdefiniowanej karty sieciowej; Należy zaimplementować kod karty, który uzyskuje dostęp do źródła danych. Jednak system Android zawiera kilka wstępnie zdefiniowanych kart, które współpracują z elementami ListView i GridView.

  • RecyclerView nie oferuje zdarzenia kliknięcia elementu, gdy użytkownik naciągnie element; Zamiast tego zdarzenia kliknięcia elementu są obsługiwane przez klasy pomocnika. ListView Natomiast oferuje zdarzenie kliknięcia elementu.

  • RecyclerView Zwiększa wydajność poprzez odtwarzanie widoków i wymuszanie wzorca uchwytu widoku, co eliminuje niepotrzebne wyszukiwanie zasobów układu. Użycie wzorca uchwytu widoku jest opcjonalne w programie ListView.

  • RecyclerView jest oparty na modularnym projekcie, który ułatwia dostosowywanie. Możesz na przykład podłączyć inne zasady układu bez znaczących zmian kodu w aplikacji. ListView Natomiast jest stosunkowo monolityczny w strukturze.

  • RecyclerView zawiera wbudowane animacje dodawania i usuwania elementów. ListView animacje wymagają dodatkowego nakładu pracy ze strony dewelopera aplikacji.

Sekcje

RecyclerView — części i funkcje

W tym temacie wyjaśniono, jak klasy Adapter, LayoutManageri ViewHolder współpracują ze sobą jako klasy pomocnicze do obsługi RecyclerView. Zawiera ogólne omówienie każdej z tych klas pomocnika i objaśnia sposób ich używania w aplikacji.

Podstawowy przykład recyclerView

W tym temacie omówiono informacje zawarte w częściach recyclerView i funkcjach , dostarczając rzeczywistych przykładów kodu, w jaki sposób różne RecyclerView elementy są implementowane w celu utworzenia rzeczywistej aplikacji do przeglądania zdjęć.

Rozszerzanie przykładu recyclerView

W tym temacie dodano dodatkowy kod do przykładowej aplikacji przedstawionej w przykładzie A Basic RecyclerView, aby zademonstrować sposób obsługi zdarzeń kliknięcia elementu i aktualizowania RecyclerView po zmianie bazowego źródła danych.

Podsumowanie

W tym przewodniku przedstawiono widżet systemu Android RecyclerView . Wyjaśniono, jak dodać RecyclerView bibliotekę pomocy technicznej do projektów platformy Xamarin.Android, sposób RecyclerView recyklingu widoków, w jaki sposób wymusza wzorzec uchwytu widoku pod kątem wydajności oraz jak różne klasy pomocnicze, które tworzą RecyclerView współpracę w celu wyświetlania kolekcji. Podano przykładowy kod, aby zademonstrować sposób RecyclerView integracji z aplikacją, wyjaśniono, jak dostosować RecyclerViewzasady układu przez podłączanie różnych menedżerów układów, a także opisano sposób obsługi zdarzeń kliknięcia elementu i powiadamiania RecyclerView o zmianach źródła danych.

Aby uzyskać więcej informacji na temat RecyclerViewklasy , zobacz dokumentację klasy RecyclerView.