Créer une application de support multi-écran Android
Je suis entrain de créer une application Android, qui doit prendre en charge plusieurs écrans.
Pour cet effet, j'ai lu beaucoup de réponses et une que j'aime le plus, c'est l'état que je peux créer des dossiers différents dans res dossier par le nom suivant,
Pour les petits écrans mise en page-petit,
Pour les grands écrans mise en page-grand,
Pour les très grands écrans mise en page-xlarge
et je dois créer des mises en page différentes pour les différents écrans avec même nom.
e.g mylayout.xml
et je dois mettre de code suivant dans manifest.xml fichier
<supports-screens android:smallScreens="true"
android:normalScreens="true"
android:largeScreens="true"
android:xlargeScreens="true"
android:anyDensity="true" />
et enfin, j'ai juste besoin d'écrire des lignes suivantes dans mon fichier d'Activité,
setContentView(R.layout.mylayout);
Maintenant quand je lance cette application dans les différents écrans, il doit acquérir des mises en page à partir de différents dossiers que par la résolution de l'écran.
Mais ce n'est pas le cas dans mon cas.Il ne prend que la mise en page que défini dans disposition dossier.
S'il vous plaît pouvez quelqu'un m'explique pourquoi ce qui se passe et comment puis-je résoudre ce problème de façon à ce que mon application puisse s'exécuter efficacement sur tous les écrans.
source d'informationauteur Jay Vyas
Vous devez vous connecter pour publier un commentaire.
Essayer comme:
au lieu de
Veuillez consulter le lien ci-dessous:
http://developer.android.com/guide/practices/screens_support.html
Pour Différentes taille de l'écran, ce qui suit est une liste de répertoires de ressources dans une application qui fournit des différents schémas de configuration pour les différentes tailles d'écran et les différents bitmap un drawable pour petite, moyenne, haute et très haute densité écrans. vous pouvez utiliser différentes tailles de la mise en page des fichiers dans le dossier res et également varier pour drawable les images en fonction de la densité..
res/drawable-mdpi/my_icon.png //bitmap de densité moyenne
res/drawable-hdpi/my_icon.png //bitmap pour la haute densité
res/drawable-xhdpi/my_icon.png //bitmap pour une plus grande densité de
Et suivi par toute activité utiliser ces lignes..
android:configChanges="orientation|screenSize|keyboardHidden"
Dans les valeurs de la convention de nommage des dossiers comme
layout-small
fonctionne uniquement pour les appareils avecapi version less than 3.1
. Vous devez créer fichier de valeurs de nommer commelayout-sw600dp
pour l'api de niveau supérieur 3.1. lire ce http://developer.android.com/guide/practices/screens_support.html3.1apicomme cela, vous devez créer la mise en page-sw600dp, la mise en page-sw720dp pour chaque type de dispositif.
mise en page-sw600dp signifie cette mise en page fonctionne pour les appareils avec la plus petite largeur de 600dp
Si vous avez de mise en page-600dp et la mise en page-sw720dp dossiers. première présentation du dossier de travaux pour les appareils avec la plus petite largeur de 600dp(7 pouces tablet) à 720dp et la seconde fonctionne pour les appareils avec la plus petite largeur au-dessus de 720dp(10 pouces de la tablette).
Ici est une liste de contrôle rapide sur la façon vous pouvez vous assurer que votre application s'affiche correctement sur différents écrans:
Utilisation
wrap_content, fill_parent,
oudp
unités lors de la spécification des dimensions dans un XML fichier de mise en page.N'utilisez pas codé en dur
pixel
valeurs dans le code de votre application(.java
fichiers).Ne pas utiliser
AbsoluteLayout
(il est déconseillé dansAndroid 1.5
). Vous devez utiliser à la placeRelativeLayout
, qui utilise le positionnement relatif pour exposer son enfant vues.Alimentation alternative bitmap un drawable pour différentes écran densités.
Prendre le temps et de lire ces screens_support ou pour obtenir une meilleure idée de voir Comment Android de trouver le Meilleur appariement des Ressources de sorte que vous savez où placer vos ressources.