web-dev-qa-db-fra.com

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

Je me sens vraiment confus. D'après docs sur developer.Android.com, il semble que pour garder mes images correctement mises à l'échelle (rapport d'aspect également) sur tous les appareils Android Android, j'ai besoin de tous ces Est-ce vraiment ce que tout le monde fait? Suis-je en train de manquer quelque chose, ou dois-je procéder 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
61
wufoo

Votre application fonctionnera sur 100% des appareils avec la disposition classique.

Vous pouvez simplement ajouter quelques boutons ou changer la mise en page en mode paysage en ajoutant des qualificatifs, mais c'est à vous!

Par exemple, sur un périphérique LDPI (petite résolution), vous souhaiterez peut-être ajuster certains boutons ou modifier un peu pour s'adapter au petit écran.

Vous pouvez également mettre des boutons à droite en mode paysage et en bas de votre mise en page en mode portrait!

Vous n'êtes pas obligé de les utiliser.

23
Waza_Be

Selon Android Dev Protip de Roman Nurik sur les qualificateurs de taille d'écran:

Si vous disposez de dispositions personnalisées pour des appareils à écran plus grand, tels que des tablettes, il est temps d'arrêter d'utiliser le qualificatif de ressource - large ou -xlarge et de passer à l'utilisation de - qualificateurs swXXdp ou -wXXdp . Ces derniers ont été introduits dans API niveau 13 , qui, fondamentalement, toutes les tablettes sont désormais prises en charge selon les derniers tableaux de versions de plate-forme1.

signifie que pour pratiquement tous les cas où -large aurait un effet, - swXXdp peut être utilisé à la place pour fournir plus de granularité.

Alors, quels qualificatifs réels sw ou w devez-vous utiliser? Voici un point de départ rapide, donnez-moi quelque chose:

Tablettes de 7 ": au lieu de layout-large, utilisez layout-sw600dp.

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

Tablettes 10 ": au lieu de layout-xlarge, utilisez layout-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, 720 est donc un point de commutation couramment utilisé.

Il y a plus que cela (vous voulez vraiment choisir des points de commutation en fonction des exigences minimales de votre contenu, pas du facteur de forme de l'appareil), mais c'est un #Protip pour un autre jour (:: cough :: + Nick Butcher :: cough: :).

7
LOG_TAG

Dans la mise en page 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 disposition 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. 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.

2

Oui. Vous devez définir une disposition différente pour une résolution d'écran différente.

Lorsque vous êtes censé travailler avec une application de type tablette. Cette fois, vous le ressentez vraiment. Il faut une disposition différente. Parce que les comprimés sont toujours de tailles différentes.

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

0
shivaprakash