Le 14 septembre 2017, nous avons publié une version actualisée de notre Politique de confidentialité. En utilisant video2brain.com vous vous engagez à respecter ces documents mis à jour. Veuillez donc prendre quelques minutes pour les consulter.

Java pour les développeurs Android

Modifier l'interface graphique

TESTEZ LINKEDIN LEARNING GRATUITEMENT ET SANS ENGAGEMENT

Tester maintenant Afficher tous les abonnements
Modifiez l'interface graphique de façon dynamique en Java. Puis, réalisez une page déroulante avec ScrollView.
07:32

Transcription

Dans cette vidéo, nous allons voir comment interagir avec notre IHM. Pour cela, nous allons compléter notre interface graphique pour lui rajouter un « TextView ». Ce « TextView » fera office de console, c'est-à-dire qu’au lieu d’écrire dans la console avec « Log.w », on écrira dans ce « TextView ». Donc je vais ouvrir mon « activity_main.xml ». Je vais y rajouter le composant « ScrollView ». Alors, qu’est-ce qu’un « ScrollView » ? Un « ScrollView » est un composant graphique qui contient un autre composant graphique et qui permet en fait de scroller, c'est-à-dire de mettre une petite barre, que si jamais l’ensemble des composants graphiques dépasse la place dont il a besoin, on va pouvoir se balader à l’intérieur. Donc vous verrez la démonstration tout à l’heure, quand on mettra beaucoup de textes pour que ça soit plus parlant. Donc le « ScrollView » est un container. Je le fais glisser et là, on voit qu’il a déjà un « LinearLayout » à l’intérieur de lui, tout simplement parce qu’un « ScrollView » est un composant graphique. Et surtout, le « ScrollView » est un « layout » qui ne peut contenir qu’un seul enfant. Donc si on veut pouvoir mettre plusieurs éléments, ce seul enfant devra être un autre « layout ». Alors, ici nous allons mettre juste un « TextView » dedans. Ce « TextView », je vais lui donner un nom : « tv » pour « TextView » et je vais l’appeler « console ». Nous repassons maintenant côté « MainActivity ». Ici, l’objectif est de récupérer ce « TextView » pour pouvoir écrire dedans. Alors, pour pouvoir récupérer le « TextView », il existe une méthode de la classe « activity ». Alors, qu’est-ce que la classe « activity » ? On le verra plus tard, ça représente cette partie ici mais c’est quand on rentrera plus en détail dans la partie Android. Donc il existe une méthode « findViewById » qui permet, je lui donne un « id » à cette méthode, et elle me renvoie le composant qui m’intéresse. Alors, si je vais voir plus en détail « findViewById », je vois que c’est un « int », que ça prend un « id », un « id » de type entier mais qu’en plus, on a ce petit truc-là. Alors ça, c’est spécifique à Android. Ça permet de préciser que cet « id » doit être de type « id XML », c'est-à-dire un « id » qui vient d’ici. Donc malgré que ce soit un « int », si ici je mets cinq, il détecte que ce cinq ne correspond pas à un « id » existant et donc il me met une erreur en me disant que lui, ce qu’il veut, c’est une ressource « id ». Alors moi, depuis le début, j’écris des « id » mais j’ai jamais écrit de chiffres. Eh bien en fait, qu’est-ce qui se passe ? Quand ici j’écris : « TextView console », lui quelque part, qu’est-ce qu’il fait ? Eh bien, il va attribuer automatiquement un « id », donc un entier, à « TextView console ». Donc ce que je vais lui transmettre ici, ce n’est pas un chiffre, c’est simplement le lien vers ce chiffre. Donc où sont stockés tous ces « id » dans la classe « R ». Alors là, j’écris « R » et on voit qu’il y en a vraiment, vraiment beaucoup. Celui qui nous intéresse, c’est le « R » de notre projet, « .id » et là j’ai tous les « id » de mon projet. Donc on n’a pas écrit grand-chose mais il commence déjà à y en avoir quelques-uns. C’est pour ça que depuis le début, pour chaque « id », je commence par le typage. Là, je sais que je veux un « TextView », je tape « tv ». J’ai appelé tous mes « TextView », « tv_ » quelque chose. Je ne me retrouve plus qu’avec les « id » « tv_ » et je retrouve facilement mon « tv_console ». Donc la méthode « findViewById », vous lui donnez un « id » et elle va chercher le composant qui correspond. Le composant qui correspond, c’est quoi ? C’est un « TextView ». Si je passe en vue de « Text », ici j’ai un « TextView » qui a été déclaré avec un « id » : « TextView console ». Ce « TextView » représente le typage. Donc je vais le stocker dans une variable de type « TextView ». Je n’ai plus qu’à donner un nom à ma variable. Ce n’est pas obligatoire mais personnellement, j’aime bien donner le même nom que l’« id » que je lui ai donné. Comme ça, je sais que l’un correspond à l’autre. Alors ici, il me met une erreur. Il m’indique que ce n’est pas la même chose, pourquoi ? Tout simplement parce que « findViewById » fonctionne avec tous les composants graphiques, pas uniquement avec les « TextView ». Donc lui, il a besoin que vous lui confirmiez que ce qu’il vous renvoie, c’est bien un « TextView ». Donc si je vais voir « findViewById », il me renvoie une vue. Donc une vue, c’est n’importe quel composant graphique. Et moi, je dois lui préciser quel type de vue exactement je vais utiliser. Alors, ça s’appelle un « cast ». Pour réaliser le « cast », je peux soit écrire à la main, soit demander à « Android Studio » de me le générer. Quand c’est souligné comme ça, en rouge de nombreuses fois, il suffit, en fait, juste de taper sur « ALT » et « ENTRÉE » avec le curseur qui est sur la ligne rouge. Et là, il vous propose une solution pour corriger cette erreur. Donc qu’est-ce qu’il me propose ? Il me propose de changer ma variable « TextView console » en « View », en variable de type « View ». Mais ce n’est pas ce qui m’intéresse parce que mon but c’est de manipuler un « TextView ». Donc on va plutôt utiliser la première qui permet de « caster » en type « TextView ». Cela revient à dire au compilateur que ce que je vais recevoir, je suis sûr que c’est un « TextView ». Et qu’est-ce qui se passe si ça n’en est pas un ? Eh bien, votre application plante. Maintenant que j’ai mon « TextView console », je vais pouvoir le manipuler. Attention, ici, je récupère un « TextView » dans le principe qu’il y a un « TextView console », un élément « TextView » qui a l’« id » « TextView console », dans le fichier « R.Layout.activity_main », dans notre fichier « activity_main ». Donc ici, j’ai bien un « TextView », « TextView console ». Et c’est cette ligne-là qui va charger le fichier « XML ». Je vous ai dit que dans la classe « R », il n’y avait pas que les « id ». Il y a plein d’autres choses, il y a aussi les fichiers de ressource. Donc le fichier « activity_main » est un « layout ». Du coup, on a « R.layout. », le nom du fichier. Et cette méthode-là va charger le fichier « XML », y compris : va charger le fichier « XML », va charger tous ses composants graphiques. Et moi, je n’ai plus qu’à les récupérer en faisant un « findViewById ». Alors, faisons un test. J’ai mon « TextView console ». Pour appliquer une méthode dessus, je vous rappelle, on utilise le point : « . » et là j’en ai pleins. Alors, si je veux manipuler un texte, je vais commencer à écrire « text » et là, j’ai tout ce qui manipule le texte de mon « TextView ». Celle qui va nous intéresser, c’est « setText ». On va lui transmettre le texte qu’on veut voir affiché. Et là, qu’est-ce qu’il attend ? Il attend un « CharSequence ». Alors, c’est quoi un « CharSequence » ? Il faut voir ça comme un « string ». D’ailleurs, c’est ce que je vais faire. Je vais lui passer un « string ». Je vais maintenant lancer mon application. Je ferme le clavier et là, j’ai bien mon « Coucou » qui a paru. Voilà. Vous savez maintenant comment récupérer un composant graphique de votre « XML » et interagir avec.

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 !