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:

Aplicativo de exemplo usando RecyclerView para listar mensagens de caixa de entrada

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 usar RecyclerView em comparação com ListView.

  • 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 com ListView e GridView.

  • 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 em ListView.

  • 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, LayoutManagere ViewHolder trabalham juntos como classes auxiliares para dar suporte RecyclerViewa . 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 RecyclerViewa 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.