Les dimensions (en particulier celles mesurées en dp, comme les côtés d'un bouton carré ou la distance entre les boutons) peuvent être définies de manière dynamique dans dimens.xml
, qui peut être défini pour différentes tailles d'écran en créant des dossiers spéciaux tels comme /res/values-hdpi
, /res/values-xlarge
, /res/values-sw720dp
etc. avec leurs propres fichiers dimens.xml
à l'intérieur. Voir http://developer.android.com/guide/practices/screens_support.html pour plus de détails.
Dans votre mise en page xml-vous:
<ImageView
android:id="@+id/button1"
android:layout_height="@dimen/button_height"
android:layout_width="@dimen/button_width"
android:layout_marginBottom="@dimen/distance_between_buttons"
android:src="/res/drawable/imgbutton"/>
<ImageView
android:id="@+id/button2"
android:layout_height="@dimen/button_height"
android:layout_width="@dimen/button_width"
android:layout_marginBottom="@dimen/distance_between_buttons"
android:src="/res/drawable/imgbutton"/>
<ImageView
android:id="@+id/button3"
android:layout_height="@dimen/button_height"
android:layout_width="@dimen/button_width"
android:src="/res/drawable/imgbutton"/>
En /res/values/dimens.xml vous pouvez avoir:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<dimen name="button_height">100dp</dimen>
<dimen name="button_width">100dp</dimen>
<dimen name="distance_between_buttons">20dp</dimen>
</resources>
Dans/res/valeurs grandes vous pouvez avoir:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<dimen name="button_height">200dp</dimen>
<dimen name="button_width">200dp</dimen>
<dimen name="distance_between_buttons">40dp</dimen>
</resources>
Que devrait contenir le fichier dimens.xml? Pourriez-vous donner un extrait de code rapide? –
Mise à jour avec des extraits de code. – Piovezan
Donc, si j'avais une mise en page pas dans l'un de ces dossiers spéciaux, mais le dimen.xml dans ces dossiers. Quand il gonfle la mise en page, il lit le dimen.xml qui s'applique à la taille actuelle de l'écran. Est-ce exact? –