8 différences entre RecyclerView et ListView
1. Modèle ViewHolder
Modèle utilisé pour réduire les appels aux méthodes findViewById () .
Dans ListView, vous pouvez facilement créer une liste sans utiliser ViewHolder. Mais pas dans le cas de RecyclerView.
2. Adaptateur
Les deux sont des AdapterViews, oui. Il fonctionne en fonction de la classe d'adaptateur.
Il est facile de créer ListView à l'aide d'adaptateurs par défaut comme ArrayAdapter, CursorAdapter mais RecyclerView fournit la classe RecyclerView.Adapter, pour créer une nouvelle classe d'adaptateur personnalisée.
Vous ne pouvez pas utiliser ArrayAdapter ou tout autre adaptateur intégré avec RecyclerView.
3. Disposition des articles
J'ai créé Vertical ListView en code simple et moins. Mais que faire si nous devons créer une GridView?
RecyclerView utilise LayoutManager pour organiser ses éléments. Il existe 3 classes LayoutManager.
- LinearLayoutManager - aide à créer une liste de types linéaires.
- GridLayoutManager - Utilisé pour créer une grille.
- StaggeredGridLayoutManager - Utilisé pour créer une grille décalée.
Des animations
ListView manque d'animations de base. Mais RecyclerView est livré avec des animations simples.
Séparateur
Les attributs android: divider et android: dividerHeight ou setDivider (), setDividerHeight () vous aident à créer un séparateur personnalisé dans ListView.
depuis le 25.1.0, vous pouvez utiliser la classe DividerItemDecoration pour créer un diviseur simple.
Cliquez sur Événements
RecyclerView manque OnItemClickListener , oui c'est très triste. Mais ils donnent plus de contrôle au développeur en fournissant RecyclerView.OnItemTouchListener.
Méthodes de notification
Vous devez appeler les méthodes de notification * appropriées pour effectuer des animations correctes. RecylcerView dispose de nombreuses méthodes de notification * lors de la comparaison avec ListView.