Skip to main content

Layout

Les Layout sont des composants de l'interface graphique qui n'ont pas de rendu à l'écran, mais vont décider comme les composants qu'ils contiennent vont être disposés à l'écran. Il en existe de très nombreuses variantes, mais nous allons étudier les trois principales qui sont les plus régulièrement utilisées.

Pour positionner un élément dans un Layout, deux propriétés XML sont obligatoire : layout_width et layout_height. Elle peuvent prendre des valeur numériques de taille ou alors :

  • fill_parent : Remplir l'élément parent
  • wrap_content : S'adapter à la taille du contenu

Linear Layout

Le Linear Layout positionne les éléments les uns à la suites des autres en ligne ou en colonne selon l'orientation. On peut donner un poids au éléments pour le permettre de s'étendre plus ou moins par rapport aux autres.

Relative Layout

Le Relative Layout définit le placement des éléments par des relations entre eux ou leur élément parent. On a va voir des relation comme : toLeftOf,toRightOf,below,above. Il autorise la superposition d'éléments.

Contraint Layout

Le Constraint Layout reprend un peu la même logique que le Relative Layout, mais avec beaucoup plus de flexibilité. Ils sont aussi beaucoup plus pratique à manipuler dans l'éditeur visuel d'Android Studio. On peut établir des contraintes de positionnement pour chaque controles par rapport aux autres éléments, au parent, par rapport au bord, etc ...