Vous disposez de deux options lorsque vous utilisez xml. Spécifiez différents fichiers de mise en page pour le mode portrait/paysage ou utilisez un fichier de mise en page unique et définissez des dimensions différentes pour le mode portrait/paysage.
différents fichiers mise en page
En utilisant différentes mise en page est vraiment nécessaire que si vous avez une disposition sensiblement différente en mode portrait/paysage. Il est plus difficile de conserver différentes mises en page au fur et à mesure de la croissance de votre application. Dans votre dossier res
vous devez créer deux sous-dossiers:
res/layout-port
res/layout-land
Vous pouvez ensuite créer un fichier avec le même nom dans chacun de ces dossiers. Lorsque l'appareil est en mode portrait, le fichier layout-port
est utilisé et en mode paysage, le fichier layout-land
est utilisé.
différents fichiers Dimens
La deuxième option consiste à utiliser un fichier de mise en page, mais de définir une dimension dynamique en elle. vous tout d'abord à nouveau besoin de créer deux dossiers dans votre dossier res
:
res/values-port
res/values-land
Vous devez ensuite créer un fichier appelé dimens.xml
dans chacun de ces dossiers. Dans le dossier values-port
vous définiriez comme:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<dimen name="main_screen_padding_top">60dp</dimen>
</resources>
et dans le dossier values-land
vous définiriez comme:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<dimen name="main_screen_padding_top">20dp</dimen>
</resources>
Ensuite, dans votre mise en page fichier XML que vous pouvez faire référence à cette valeur dimen:
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:paddingStart="5dp"
android:paddingEnd="0dp"
android:paddingTop="@dimen/main_screen_padding_top"
android:orientation="vertical">
<TextView></TextView>
<TextView></TextView>
</LinearLayout>
Et il utilisera la dimension appropriée en fonction de l'orientation de l'appareil.
Pour votre usage, je suggère d'utiliser la méthode des dimensions, car il est généralement plus facile à entretenir.
C'est exactement ce que je cherchais. Je vous remercie – fattidare