Sommaire

Styles et thèmes

Styles Thème

À l’instar des feuilles de style CSS (Cascading Style Sheets) utilisées pour les pages web, les styles sous Android permettent d’extraire les propriétés de design d’une vue de son contenu. Cette séparation permet un code plus clair des vues, une réutilisation des styles, et facilite grandement la construction d’interfaces homogènes.

1. Les styles

Un style est une ressource définie dans un fichier XML du dossier res/values. Il est d’usage de regrouper tous les styles dans un seul fichier nommé styles.xml.

Les styles y sont définis en utilisant la balise style. Celle-ci doit intégrer l’attribut name, qui permet de donner un nom unique au style, et éventuellement l’attribut parent, qui précise le nom du thème parent au style en cours de définition : la notion d’héritage est en effet supportée par les styles sous Android. Nous verrons que cette fonctionnalité puissante peut également être source d’erreur et d’incompréhension.

Les caractéristiques d’un style sont définies par des balises item, chaque balise représentant une propriété du style.

Exemple

<style name="text" parent="Theme.AppCompat.Light"> 
 <item name="android:layout_margin">@dimen/small_margin</item> 
 <item name="android:textColor">@color/primaryDarkColor</item>  ...