Java pour les développeurs Android

Appréhender les RecyclerView

Testez gratuitement nos 1325 formations

pendant 10 jours !

Tester maintenant Afficher tous les abonnements
Votre formateur vous présente les sujets qui seront abordés dans ce chapitre. Vous découvrirez également l'intérêt des RecyclerView.
04:37

Transcription

Dans ce chapitre, l'objectif sera d'apprendre à étendre d'une classe du Sdk d'Android pour pouvoir utiliser ses fonctionnalités. De voir le fonctionnement des interfaces, de comprendre et d'utiliser le concept de « call back », récurrent dans Android. Pour cela, nous allons ajouter une Recyclerview à notre projet. Le Recyclerview est un composant graphique permettant d'afficher des listes. Revenons à notre projet. Nous avons une liste d'élèves et une liste d'enseignants. Admettons que nous souhaitions juste une liste élève ou enseignant, donc une liste de Personnes, nous avons vu précédemment comment faire. Si je souhaite pouvoir mettre des élèves d'une certaine couleur et les enseignants d'une autre couleur, avec un Textview, c'est faisable. Il suffit de se renseigner sur les possibilités du Textview. On peut y insérer du code HTML et donc, y mettre des balises de couleurs, de gras ou changer la taille du texte que sur certaines parties. Mais maintenant, imaginons que ma liste de Personnes fasse 10 000 personnes, comme un carnet de contacts e-mail, par exemple. Imaginez le temps qu'il faudra pour créer le string qui permettra de contenir l'ensemble, à chaque fois que l'on va vouloir mettre à jour l'écran, il va falloir recréer ce string d'environ 10 000 lignes. Mettons ça en œuvre et analysons les performances mémoire. au moment de cliquer sur le bouton Ajouter, au lieu d'ajouter une personne, nous allons en ajouter 10 000. Nous allons en ajouter 10 000. Et on va voir ce qu'il se passe côté mémoire. Je lance mon application. Mon application se lance, je n'ai pas d'élèves, je vais mettre Android Monitor. Actuellement, mon Android Monitor est calme, il ne passe rien, normal, je n'utilise pas mon application. Quand je vais cliquer sur Ajouter, je vais créer et ajouter 10 000 personnes à ma liste. Puis, cela va appeler la méthode Rafraîchir écran qui va parcourir cette liste et construire un string d'environ 10 000 lignes et l'insérer dans le textView. Déjà, on voit que mon écran est figé, je ne peux plus rien faire. Regardez comment mon moniteur s'enflamme, je vous rappelle, la ligne bleue est l'espace mémoire alloué par l'application, la ligne noire est l'espace mémoire autorisé pour l'application. C'est-à-dire qu'on peut augmenter petit à petit la mémoire quand la ligne bleue atteint la ligne noire, il y a une redemande d'allocation mémoire. On voit des énormes pics de demande mémoire et le GarbageCollector qui tourne, derrière. Si on regarde, au final, nous avons atteint des pics à 32Mb. Même si, à la fin, le GarbageCollector a pu tout libérer, nous avons vu l'espace mémoire nécessaire et le temps que cela a pris. Nous nous sommes retrouvés avec une application inutilisable pendant quatre à cinq secondes. Ce qui est clairement déconseillé. Voilà pour l'affichage d'une liste avec un Textview. Pour répondre à ce problème, je vais vous apprendre à utiliser le composant graphique Recyclerview dans ce chapitre. Voilà ce qu'on obtiendra à la fin, le rendu est un petit peu différent. J'ai différencié les élèves et les enseignants par des couleurs et chaque personne est maintenant sur deux lignes. Je relance mon application pour partir de 0. Analysons la mémoire avec un ajout de 10 000 personnes et un affichage géré par Recyclerview. Voilà, mon application a été rechargée, elle ne possède pas d'enseignant ou d'élève enregistré, on va donc, dans l'Android Monitor, je vais me placer sur le chapitre 6 Interface qui contient le Recyclerview, j'ai la même chose derrière, c'est-à-dire que je vais cliquer Ajouter et ajouter 10 000 personnes. On va regarder ce qu'il se passe. On voit, si je décale un petit peu, qu'on tourne entre 8 et 16, en termes de mémoire. Je clique sur Ajouter. Et là, c'est instantané, j'ai cliqué et c'est apparu. J'ai à peine un effleurement de mémoire. Ici, on peut vraiment voir la différence mémoire entre utiliser un Textview et utiliser un Recyclerview. Ici, c'est vraiment la gestion graphique du texte qui pose problème et non la création des 10 000 personnes. Car la création des 10 000 objets est faite de la même façon des deux côtés. C'est vraiment sa gestion graphique, donc son affichage. Maintenant, vous connaissez l'intérêt qu'apporte un Recyclerview par rapport à un Textview, nous pouvons commencer son implémentation.

Java pour les développeurs Android

Prenez en main la syntaxe et les concepts de Java pour vos développements d’applications pour Android. Abordez les variables, les chaînes de caractères, les conditions, etc.

7h01 (65 vidéos)
Aucun commentaire n´est disponible actuellement
 
Logiciel :
Spécial abonnés
Date de parution :24 avr. 2017

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !