Découvrir le développement d'applications avec Android 5

Parcourir les styles et thèmes

Testez gratuitement nos 1247 formations

pendant 10 jours !

Tester maintenant Afficher tous les abonnements
Comprenez ce que sont les styles et les thèmes. Vous pouvez créer ces ressources pour standardiser l'apparence de vos multiples vues.
06:54

Transcription

Pour commencer à améliorer l'interface graphique de notre application il faut d'abord comprendre la notion de thème et de style. Les styles, sont très similaires au style que l'on peut avoir si vous avez déjà fait du développement web, notamment avec le CSS. Pour l'instant, prenons l'exemple de notre label, on a mis plusieurs réglages dessus, notamment, on a mis une couleur de fond, qui était rose parce que on avait besoin de le voir pour débuguer. Et on n'a pas d'autres réglages particulier. Ce qu'on pourrait faire plutôt que de mettre ici ce genre de règles, ça serait créer un style, par exemple important text et déplacer tous les réglage qui sont importants qui correspondent au style important text, dans la déclaration du style. Donc on va le faire ici, on va aller dans les fichiers de ressources, vous avez les styles, nous, on va prendre celui par défaut. Et on va ajouter un nouveau style. Pour l'instant on va pas se préoccupe des autres, je vous expliquerai après. Style... Donc là, ça va être important... text... Et vous allez pouvoir ajouter à l'intérieur, des items. Donc c'est quoi ? C'est le background qu'on avait utilisé tout à l'heure ? background et donc là, il attend une couleur donc ça va être... color... on avait mis colorAccent. On peut ajouter autant d'items qu'on souhaite. fontFamily... On va prendre par exemple monospace, on va prendre textSize, on va mettre une taille fixe on va mettre par exemple, 14 sp j'ai oublié de l'affecter autant pour moi. content_main Donc là, ça fait rien pour l'instant, je vais enlever la propriété background, et je vais ajouter la propriété style. Il faut que je trouve mon style là-dedans, comme on avait dit important text voilà, on commence à taper importantText, il me le propose. Et je vais lancer pour vérifier que ça a bien appliqué mes réglages. Là on voit, ça a marché. C'est pas flagrant, je vais faire quelque chose d'un peu plus visible. On va changer juste la valeur en 24. Déjà, ça sera pas mal, et relancer. Donc voyez, c'est beaucoup plus grand. On a bien une police monospace, pour que chaque lettre fasse le même espacement Et donc on a défini un style qu'on peut appliquer sur n'importe quelle vue. Si on applique ce style qui a des réglages de police à une vue qui n'a de notion de police, tous les attributs seront juste ignorés. Par exemple, si je l'applique à une imageView, il va ignorer ces deux attributs-là, et prendre en revanche l'attribut couleur de fond, sur l'imageView. On peut aussi faire de l'héritage, c'est à dire qu'on peut décider de dire Style... Text... Si je veux que tous les textes de mon application, par exemple soit en monospace, tous mes styles sont en monospace, je peux dire parentText Donc on a ce style-là qui définit monospace comme fontFamily et celui-ci, récupère ceci et ajoute ces propriétés-là. Et on peut redéfinir si on a besoin si celui-ci hérite d'un autre qui a plusieurs niveaux, on peut à chaque niveau redéfinir, comme en CSS chacun des styles. Maintenant, la notion de thème. Un thème, c'est un style appliqué à une activité entière ou à une application entière. Par exemple, dans le manisfeste on choisit un thème. Donc c'est le style AppThème si je vais dans dans mon application, dans mon fichier style.XML on voit qu'on a déclaré un style AppThème, qui définit les trois couleurs primaires, et ensuite d'autres réglages supplémentaires sur ce thème. C'est le même principe que ce que je vous disais, sauf que ça s'applique à une application entière ou une activité entière. Vous pouvez aussi préciser pour une activité quel thème elle doit prendre. Ça crée des réglages par défaut qui peuvent être redéfinis sur chacune des views ou chacun des sous-styles. Pour Android et le design material design vous avez un thème en particulier à utiliser, c'est le thème material. Par contre le souci avec le thème material c'est qu'il ne fonctionne qu'à partir de l'API 21, et plus. Si vous gérez plusieurs versions d'Android ça peut être embêtant pour vous. Donc il y a deux façons de faire. soit vous décidez de rester concentré sur la librairie native, et de pas utiliser la librairie de support et vous pouvez, ben c'est ce qu'on a fait ici, un petit peu, faire une variante, en fait en disant : j'ai le style normal celui dans lequel je mets la plupart de mes infos, mais pour les API 21 et plus, parce que pour les qualifiants, pour les numéros d'API, ça prend toujours 21 enfin, le numéro et plus. On redéfinit certains réglages, alors on n'a pas utilisé ce principe-là pour le thème de l'application, pour le matériel thème, mais si aviez voulu, vous auriez pu dire le AppThème ici, il hérite de materialThème à partir de l'API 21. Sinon, l'autre possibilité, c'est ce qu'on a fait nous ici et c'est ce qui est recommandé par l'assistant, d'ailleurs c'est ce qui fait automatiquement par l'assistant. C'est d'utiliser automatiquement le theme, point, appCompat. Le theme.appCompat en fait, il est compatible avec toutes les versions, et il applique des notions de material design sur la plupart des vues fournies par le système. Il n'est pas aussi complet que celui natif mais il applique sur la plupart des vues et au moins ce sera cohérent Vous aurez la même apparence sur toutes les versions d'Android. Même sur des versions assez ancienne, puisque le thème de compatibilité retourne à l'API 7. Donc vous avez vraiment de la marge. Et ça vous évite encore une fois de gérer vous-même les notions de compatibilité. Là, la variation qui a été faire, c'est pour tout à fait autre chose, c'est pour l'ActionBar, mais on aurait pu justement se servir de ce qualifiant pour appliquer le themeMaterial natif sur les API 21 et plus, et revenir sur un themeLite standard sans passer par la compatibilité, sur les autres versions, en le déclarant ici. Voilà donc pour les thèmes. Essayez systématiquement d'utiliser le theme.appCompat, c'est le meilleur moyen d'avoir quelque chose de cohérent. Et il va appliquer beaucoup de design liés au material design, la mise en forme des boutons, des champs texte, des boutons radio etc, sera vraiment adaptée à ce nouveau thème que propose Google.

Découvrir le développement d'applications avec Android 5

Développez des applications mobiles pour Android. Créez un projet de A à Z sous Android Studio, de l’installation du kit de développement, jusqu’à sa publication sur le Play Store.

3h17 (39 vidéos)
Aucun commentaire n´est disponible actuellement
 
Logiciel :
Android Android 5
Spécial abonnés
Date de parution :17 mars 2016

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 !