79 votes

Mise en page pour les tablettes sous Android

Je souhaite créer différentes dispositions pour les tablettes et les combinés sous Android. Où devrais-je mettre les ressources de mise en page afin de faire cette différenciation?

175voto

urSus Points 2583

Je sais que c’est une vieille question, mais pour le plaisir de… Selon la documentation , vous devriez créer de multiples dossiers d’actifs tels que celui-ci.

 res/layout/main_activity.xml           # For handsets (smaller than 600dp available width)
res/layout-sw600dp/main_activity.xml   # For 7" tablets (600dp wide and bigger)
res/layout-sw720dp/main_activity.xml   # For 10" tablets (720dp wide and bigger)
 

45voto

Sakthimuthiah Points 571

Si vous utilisez le concept Fragment dans le code (mise en page à volets multiples), il est préférable d’utiliser wdp au lieu de swdp.

 res/layout-w600dp/main_activity.xml   # For 7" tablets (600dp wide and bigger)
res/layout-w720dp/main_activity.xml   # For 10" tablets (720dp wide and bigger)
res/layout-w600dp-land/main_activity.xml   # For 7" tablets in landscape (600dp wide and                  bigger)
res/layout-w720dp-land/main_activity.xml   # For 10" tablets in landscape (720dp wide and bigger)
 

Reportez-vous à la table pour comprendre wdp

Table 2. New configuration qualifers for screen size (introduced in Android 3.2). Dans le lien suivant http://developer.android.com/guide/practices/screens_support.html

23voto

Bryan Denny Points 12910

Avec les mises en page, je crois que vous pouvez seulement de courant se différencier par le texte suivant:

res/layout/my_layout.xml            // layout for normal screen size
res/layout-small/my_layout.xml      // layout for small screen size
res/layout-large/my_layout.xml      // layout for large screen size
res/layout-large-land/my_layout.xml // layout for large screen size in landscape mode

Vous pouvez trouver plus d'informations sur ce que vous pouvez ajouter à la structure de dossier pour différencier les différents paramètres ici.

Le plus gros problème est que le SDK Android n'a pas vraiment intégré les tablettes officiellement. J'espère que ça sera corrigé dans la prochaine version d'Android. Sinon, vous devez juste vous assurer que vous utilisez mise à l'échelle des mises en page qui va travailler pour toute la taille de l'écran.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X