Simple Android RecyclerView exemple
J'ai fait une liste d'articles un peu de temps à l'aide de Android RecyclerView
, mais c'est un processus compliqué. En passant par l'un des nombreux tutoriels en ligne des œuvres (cette, cette, et cette sont bons), mais je suis à la recherche d'un os à nu exemple que je peux copier et coller pour se lever et courir vite. Seules les fonctions suivantes sont nécessaires:
- Mise en page verticale
- Un seul TextView sur chaque ligne
- Répond à cliquez sur les événements
Parce que j'ai voulu pour cela, plusieurs fois, j'ai enfin décidé de faire la réponse ci-dessous pour l'avenir de ma référence et de la vôtre.
- cochez cette tutoriel avec le code source
Vous devez vous connecter pour publier un commentaire.
Ce qui suit est un exemple minimal qui ressemble à l'image suivante.
Commencer avec une activité vide. Vous allez effectuer les tâches suivantes pour ajouter le RecyclerView. Tout ce que vous devez faire est de copier et de coller le code dans chaque section. Plus tard, vous pouvez le personnaliser en fonction de vos besoins.
Mise à jour de Gradle dépendances
Assurez-vous que les dépendances suivantes sont à votre application
gradle.build
fichier:Vous pouvez mettre à jour les numéros de version pour tout ce qui est le plus courant. Utilisation
compile
plutôt queimplementation
si vous êtes toujours à l'aide de Android Studio 2.x.Créer de l'activité mise en page
Ajouter le
RecyclerView
à votre mise en page xml.activity_main.xml
Créer des lignes de mise en page
Chaque ligne dans notre
RecyclerView
va seulement ont un seulTextView
. Créer une nouvelle mise en page du fichier de ressources.recyclerview_row.xml
Créer la carte
La
RecyclerView
besoin d'un adaptateur pour remplir les vues de chaque ligne avec vos données. Créer un nouveau fichier java.MyRecyclerViewAdapter.java
Notes
ListViews
et est un besoin commun. Vous pouvez supprimer ce code si vous n'en avez pas besoin.Initialiser RecyclerView de l'Activité
Ajoutez le code suivant à votre activité principale.
MainActivity.java
Notes
ItemClickListener
que nous avons défini dans notre carte. Cela nous permet de gérer ligne cliquez sur les événements dansonItemClick
.Fini
Que c'est. Vous devriez être en mesure d'exécuter votre projet et obtenir quelque chose de similaire à l'image ci-dessus.
Passe
L'ajout d'un séparateur entre les lignes
Vous pouvez ajouter un simple diviseur comme ce
Si vous voulez quelque chose d'un peu plus complexe, voir les réponses suivantes:
De modifier une ligne de couleur sur cliquez sur
Voir cette réponse pour savoir comment changer la couleur d'arrière-plan et ajouter de l'Effet d'entraînement lorsqu'une ligne est cliqué.
Mise à jour des lignes
Voir cette réponse pour savoir comment ajouter, supprimer et mettre à jour les lignes.
Lecture
public
devant le constructeur afin qu'il peut être utilisé à l'extérieur du colis.Basées sur différentes sources, j'ai créé, Simple de mise en Œuvre de RecyclerView à l'aide d'une Simple Bibliothèque.
Ajouter cette ligne dans
build.gradle
AddCreate un RecyclerView en ajoutant MyRecyclerView dans activity_main.xml avec
Maintenant dans le MainActivity, Créer un ViewHolder en passant le nom de la Classe qui doit lier
Créer des Éléments variable de liste et des adaptateurs avec très peu de lignes en passant éléments, la classe et la mise en page de la carte
ClickListener peuvent être ajoutés avec des lignes suivantes
Son tout à fait.
Plus d'exemple et la mise en œuvre peut être trouvé ici .
Espérons que cette aide !!!
Minimale Recycleur vue prêt à utiliser Kotlin modèle pour:
Je sais que c'est un vieux thread et donc des réponses ici. L'ajout de cette réponse pour une référence future:
Ajouter un recyclage vue de la mise en page
Créer une mise en page pour afficher les éléments de la liste (list_item.xml)
Maintenant créer un minimum d'Adaptateur pour contenir les données, le code ici est auto-explicatif
Ajouter cette classe pour gérer Seul clic et clic long des événements sur les Éléments de la Liste
Enfin configurer votre adaptateur à Recycler Vue et ajoutez une Touche d'Écouteur pour démarrer l'interception d'événement tactile pour simple ou double tap sur les éléments de la liste
Bonus ; Mise À Jour Des Données
Résultat:
Maintenant, vous devez 1 adaptateur pour tous
RecyclerView
onBindViewHolder
, PasonCreateViewHolder
de manutention.Que je montre ici deux différents
RecyclerView
par 1 adaptateur -activity_home.xml
Vous pouvez le voir, je passe de la liste, l'élément de mise en page id et cliquez sur l'écouteur de la mise en page.
Cette attributs personnalisés sont créés par BindingAdapter.
Maintenant de l'Activité, de vous transmettre la liste, cliquez sur l'auditeur comme
HomeActivity.java
Vous ne voulez pas lire trop, directement clone/télécharger exemple complet de mon dépôt github. Et essayer vous-même.
Vous pouvez voir
GeneralAdapter.java
au-dessus des pensions.Si vous avez des problèmes lors de la configuration de la liaison de données, veuillez consulter cette réponse.
Depuis je ne peux pas commenter mais je vais poster une réponse sur le lien.. j'ai trouvé un moyen simple, bien organisé tutoriel sur la recyclerview
http://www.androiddeft.com/2017/10/01/recyclerview-android/
En dehors de cela quand vous allez à ajouter un recycleur de vue en activité ce que vous voulez faire est comme ci-dessous et comment vous devez faire ce qui a été décrit sur le lien
de la classe parent RecyclerView.Adaptateur
Vous pouvez utiliser l'adaptateur abstrait avec diff utils et filtre
SimpleAbstractAdapter.kt
Et d'étendre adaptateur abstrait avec implémente les méthodes
TasksAdapter.kt
Init adaptateur
et remplir
ajouter un filtre personnalisé
filtrer les données