RecyclerView
RecyclerView é um grupo de exibição para exibir coleções; ele foi projetado para ser uma substituição mais flexível para grupos de exibição mais antigos, como ListView e GridView. Este guia explica como usar e personalizar o RecyclerView em aplicativos Xamarin.Android.
RecyclerView
Muitos aplicativos precisam exibir coleções do mesmo tipo (como mensagens, contatos, imagens ou músicas); geralmente, essa coleção é muito grande para caber na tela, portanto, a coleção é apresentada em uma janela pequena que pode rolar suavemente por todos os itens da coleção.
RecyclerView
é um widget do Android que exibe uma coleção de itens em uma lista ou em uma grade, permitindo que o usuário role pela coleção. Veja a seguir uma captura de tela de um aplicativo de exemplo que usa RecyclerView
para exibir o conteúdo da caixa de entrada de email em uma lista de rolagem vertical:
RecyclerView
oferece dois recursos atraentes:
Ele tem uma arquitetura flexível que permite modificar seu comportamento conectando seus componentes preferenciais.
Ele é eficiente com grandes coleções porque reutiliza exibições de itens e requer o uso de portadores de exibição para referências de exibição de cache.
Este guia explica como usar RecyclerView
em aplicativos Xamarin.Android; ele explica como adicionar o RecyclerView
pacote ao seu projeto Xamarin.Android e descreve como RecyclerView
funciona em um aplicativo típico. Exemplos reais de código são fornecidos para mostrar como se integrar RecyclerView
ao seu aplicativo, como implementar o clique de exibição de item e como atualizar RecyclerView
quando seus dados subjacentes forem alterados. Este guia pressupõe que você esteja familiarizado com o desenvolvimento do Xamarin.Android.
Requisitos
Embora RecyclerView
seja frequentemente associado ao Android 5.0 Lollipop, ele é oferecido como uma biblioteca de suporte – RecyclerView
funciona com aplicativos destinados ao nível de API 7 (Android 2.1) e posterior. O seguinte é necessário para usar RecyclerView
em aplicativos baseados em Xamarin:
Xamarin.Android – O Xamarin.Android 4.20 ou posterior deve ser instalado e configurado com o Visual Studio ou Visual Studio para Mac.
Seu projeto de aplicativo deve incluir o pacote Xamarin.Android.Support.v7.RecyclerView . Para obter mais informações sobre como instalar pacotes NuGet, consulte Passo a passo: incluindo um NuGet em seu projeto.
Visão geral
RecyclerView
pode ser considerado um substituto para os ListView
widgets e GridView
no Android. Assim como seus antecessores, RecyclerView
o foi projetado para exibir um conjunto de dados grande em uma janela pequena, mas RecyclerView
oferece mais opções de layout e é melhor otimizado para exibir grandes coleções. Se você estiver familiarizado com ListView
, haverá várias diferenças importantes entre ListView
e RecyclerView
:
RecyclerView
é um pouco mais complexo de usar: você precisa escrever mais código para usarRecyclerView
em comparação comListView
.RecyclerView
não fornece um adaptador predefinido; você deve implementar o código do adaptador que acessa sua fonte de dados. No entanto, o Android inclui vários adaptadores predefinidos que funcionam comListView
eGridView
.RecyclerView
não oferece um evento de clique de item quando um usuário toca em um item; Em vez disso, os eventos de clique em item são tratados por classes auxiliares. Por outro lado,ListView
oferece um evento de clique em item.RecyclerView
aprimora o desempenho reciclando exibições e impondo o padrão de porta-exibição, o que elimina pesquisas desnecessárias de recursos de layout. O uso do padrão de porta-exibição é opcional emListView
.RecyclerView
se baseia em um design modular que facilita a personalização. Por exemplo, você pode conectar uma política de layout diferente sem alterações significativas de código em seu aplicativo. Por outro lado,ListView
é relativamente monolítico na estrutura.RecyclerView
inclui animações internas para adicionar e remover itens.ListView
as animações exigem algum esforço adicional por parte do desenvolvedor do aplicativo.
Seções
RecyclerExibir partes e funcionalidades
Este tópico explica como o Adapter
, LayoutManager
e ViewHolder
trabalham juntos como classes auxiliares para dar suporte RecyclerView
a .
Ele fornece uma visão geral de alto nível de cada uma dessas classes auxiliares e explica como usá-las em seu aplicativo.
Um exemplo básico de RecyclerView
Este tópico se baseia nas informações fornecidas em RecyclerView Parts and Functionality fornecendo exemplos reais de código de como os vários RecyclerView
elementos são implementados para criar um aplicativo de navegação fotográfica do mundo real.
Estendendo o exemplo RecyclerView
Este tópico adiciona código adicional ao aplicativo de exemplo apresentado em Um exemplo de RecyclerView básico para demonstrar como lidar com eventos de clique em item e atualizar RecyclerView
quando a fonte de dados subjacente é alterada.
Resumo
Este guia introduziu o widget do Android RecyclerView
; ele explicou como adicionar a RecyclerView
biblioteca de suporte a projetos Xamarin.Android, como RecyclerView
recicla exibições, como ele impõe o padrão de porta-exibição para eficiência e como as várias classes auxiliares que compõem colaboram RecyclerView
para exibir coleções. Ele forneceu código de exemplo para demonstrar como RecyclerView
é integrado a um aplicativo, explicou como personalizar RecyclerView
a política de layout conectando diferentes gerenciadores de layout e descreveu como lidar com eventos de clique de item e notificar RecyclerView
sobre alterações na fonte de dados.
Para obter mais informações sobre RecyclerView
, consulte a referência de classe RecyclerView.