Style et layout

Résolu
Bonjour,

Je m'intéresse à la centralisation des attributs des différentes vues (layout, textview, imageview... etc) dans le fichier xml "style". J'ai vu que c'était possible pour certains attributs seulement mais pas tous. Concrètement ce que j'aurais aimé faire c'est mettre tous les attributs de mon layout :
<LinearLayout
android:orientation="vertical"
android:background="@drawable/cadre"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="11dp"
android:layout_marginRight="11dp"
android:layout_marginBottom="77dp"
android:layout_marginLeft="11dp"
android:paddingTop="37dp"
android:paddingRight="7dp"
android:paddingBottom="37dp"
android:paddingLeft="7dp"
android:gravity="center">


Dans le fichier xml "style" sous cette forme :
<style name="layout_principal">
<item name="orientation">vertical</item>
<item name="background">@drawable/cadre</item>
<item name="layout_width">match_parent</item>
<item name="layout_height">wrap_content</item>
<item name="layout_marginTop">11dp</item>
<item name="layout_marginRight">11dp</item>
<item name="layout_marginBottom">77dp</item>
<item name="layout_marginLeft">11dp</item>
<item name="paddingTop">37dp</item>
<item name="paddingRight">7dp</item>
<item name="paddingBottom">37dp</item>
<item name="paddingLeft">7dp</item>
<item name="gravity">center</item>
</style>


Pour ensuite ne plus avoir qu'à mettre dans mon layout :
<LinearLayout style="@style/layout_principal">


Mais visiblement ce n'est pas possible... ça aurait été trop beau. ^^ Il y a un autre moyen de tout centraliser comme ça ou ce n'est vraiment pas possible sous Android ?

2 réponses

  1. Ah merci. :-) Je chercherai sur ce site. C'est vrai que d'habitude je fais mes recherches sur Google et je n'obtiens pas toujours de résultats probants.
    1. Modérateur
      Hello,

      Il est possible de mettre tous les attributs que tu utiliserais dans ton fichier xml dans un fichier style. Sauf que tu n'as pas la bonne syntaxe pour les attributs...
      Voici la doc. Prends le réflexe de chercher dans le site developer.android.com! Il y a vraiment tout!

      Extrait (note le android:):
      <style name="CodeFont.Red">
              <item name="android:textColor">#FF0000</item>
      </style>


      Discussions similaires

      Qu'est ce que un Layout ?

      1 réponse