8 diferenças entre RecyclerView e ListView
1. Padrão do ViewHolder
O padrão usado para reduzir as chamadas para findViewById () métodos .
No ListView, você pode criar facilmente uma lista sem usar o ViewHolder. Mas não no caso do RecyclerView.
2. Adaptador
Ambos são AdapterViews, sim. Funciona com base na classe do adaptador.
É fácil criar o ListView usando adaptadores padrão como ArrayAdapter, CursorAdapter, mas o RecyclerView fornece a classe RecyclerView.Adapter, Para criar uma nova classe de adaptador personalizada.
Você não pode usar o ArrayAdapter ou qualquer outro adaptador interno com o RecyclerView.
3. Disposição dos itens
Eu criei o ListView vertical em código simples e menos. Mas e se precisarmos criar um GridView?
O RecyclerView usa o LayoutManager para organizar seus itens. Existem 3 classes LayoutManager.
- LinearLayoutManager - ajuda a criar uma lista de tipos lineares.
- GridLayoutManager - Usado para criar Grid.
- StaggeredGridLayoutManager - Usado para criar staggeredgrid.
Animações
ListView não possui animações básicas. Mas o RecyclerView vem com animações simples.
Divisor
O android: divider e android: dividerHeight atributos ou setDivider (), setDividerHeight () ajudam a criar um divisor personalizado no ListView.
desde 25.1.0, você pode usar o DividerItemDecoration classe para criar um divisor simples.
Clique em Eventos
O RecyclerView não possui o OnItemClickListener , sim, isso é muito triste. Mas eles dão mais controle ao desenvolvedor, fornecendo RecyclerView.OnItemTouchListener.
Métodos de notificação
Você precisa chamar os métodos de notificação * adequados para executar as animações corretas. O RecylcerView possui muitos métodos de notificação * quando comparado ao ListView.