61 votes

Ai-je besoin de 14 configurations différentes pour prendre en charge tous les appareils Android?

Je me sens vraiment confus. D'après la documentation de developer.android.com, il semble que pour garder mes images correctement redimensionnées (le format d'image également) sur tous les appareils Android actuels, j'ai besoin de toutes ces mises en page ci-dessous. Est-ce vraiment ce que tout le monde fait? Est-ce que je manque quelque chose, ou devrais-je m'y prendre différemment?

 Low density Small screens QVGA 240x320
------------------------------------------------
layout-small-ldpi
layout-small-land-ldpi

Low density Normal screens WVGA400 240x400 (x432)
------------------------------------------------
layout-ldpi
layout-land-ldpi

Medium density Normal screens HVGA 320x480
------------------------------------------------
layout-mdpi
layout-land-mdpi

Medium density Large screens HVGA 320x480
------------------------------------------------
layout-large-mdpi
layout-large-land-mdpi

High density Normal screens WVGA800 480x800 (x854)
------------------------------------------------
layout-hdpi
layout-land-hdpi

Xoom (medium density large but 1280x800 res)
------------------------------------------------
layout-xlarge
layout-xlarge-land
 

23voto

Waza_Be Points 14584

Oui, bien sûr, les développeurs Android sont sadique et comme la souffrance par la création de mises en page 14!

Sérieusement, votre application va travailler sur 100% des appareils avec la mise en page classique.

Vous pouvez simplement ajouter un peu de boutons ou de modifier la mise en page en mode paysage par l'ajout de certains qualificatifs, mais c'est à vous de voir!

Par exemple, sur LDPI (petit) appareil, vous souhaiterez peut-être supprimer certains boutons ou de modifier un peu pour s'adapter à la taille de l'écran.

Vous pouvez également mettre quelques boutons sur la droite en mode paysage et en bas de votre mise en page en mode portrait!

Vous n'avez pas "obligé" d'utiliser.

8voto

LOG_TAG Points 4506

Selon Android Dev Protip du Roman Nurik à propos de la taille de l'écran qualificatifs:

Si vous avez des mises en page personnalisées pour un écran plus grand des appareils tels que les tablettes, il est maintenant temps de cesser d'utiliser le -grand ou -xlarge ressources qualificatif et commutateur à l'aide d' -swXXdp ou -wXXdp qualificatifs. Ces derniers ont été introduit dans l'API de niveau 13, qui, fondamentalement, tous les comprimés ont maintenant support selon la dernière version de la plateforme charts1.

signifie que pratiquement tous les cas où le -grand aurait aucun effet, -swXXdp peut être utilisé au lieu de fournir plus de précision.

Alors que les sw ou w qualificatifs devriez-vous utiliser? Voici un rapide juste donnez-moi quelque chose de point de départ:

Tablettes 7": au Lieu de mise en page-grand, utiliser la mise en page-sw600dp.

Exemple: la Nexus 7 = 960×600 dp; la plus petite des deux dimensions est 600.

10" comprimés: au Lieu de mise en page-xlarge, utiliser la mise en page-sw720dp.

Exemple: Nexus 10 = 1280×800 dp; la plus petite des deux dimensions est 800. Certaines tablettes de 10 pouces sont un peu plus étroites, de sorte 720 est utilisée couramment dans le point de commutation.

Il ya plus à lui que juste que (vous voulez vraiment de choisir de commutation des points en fonction de votre contenu à des exigences minimales, et non pas sur l'appareil facteur de forme), mais c'est un #Protip pour un autre jour (::toux:: +Nick Boucher ::toux::).

2voto

Marcos Vasconcelos Points 5120

Dans la présentation, si vous n'utilisez pas AbsoluteLayout, votre application va être redimensionnée pour s'adapter à l'écran.

Mais dans certains cas, pour les écrans plus petits, vous devez déclarer une nouvelle mise en page avec moins de composants, par exemple.

Pour les images:

Vous avez quelques options.

Ignorez simplement certaines résolutions et laissez l’appareil choisir la meilleure image qui soit. Déclarez sur AndroidManifest les tailles que vous souhaitez prendre en charge. Ou n'en a qu'un et laissez le redimensionnement visser votre application.

0voto

shivaprakash Points 23

Oui. Vous devez définir une mise en page différente pour une résolution d'écran différente.

Lorsque vous êtes censé travailler avec une application de type tablette. C'est vraiment ce que tu ressens. Il y a un besoin de disposition différente. Parce que les comprimés sont toujours de taille différente.

Une dernière chose, lorsque vous travaillez sur Android, signifie que vous devez toujours goûter votre application avec un appareil réel. Et testez également avec des émulateurs de tailles différentes.

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