0

Je suis nouveau sur Android. Je construis ma première application.Studio Android sélectionnant mauvaises mises en page

J'ai essayé de le faire supporter plusieurs écrans. Je suis passé par la section des développeurs dans Android, mais, je ne suis pas clair à ces choses.

  1. Quelle est la résolution, je devrais utiliser pour les différents dossiers drawable? (par exemple un écran hdpi peut avoir 500 * 600 écran ou 1280 * 1920 écran.)

  2. J'ai utilisé des dossiers de mise en page comme mentionné dans la page des développeurs, comme petit, normal et le reste, mais android continue sélection des dispositions normales pour les écrans comme nexus 6p (pour lequel je devine grand serait approprié).

Y at-il un moyen de le rendre plus beau?

+0

vous pouvez fournir une image à 1 résolution supérieure, cela s'adaptera simplement sur son conteneur et sa mise à l'échelle. juste un rappel de l'orientation de la photo à mettre à l'échelle correctement. si c'est sur le paysage puis fournir un paysage images (largeur> hauteur) et vice versa –

Répondre

2

enter image description here
Vous devez écrire la mise en page une fois, mais doivent définir les dimensions dimens.xml pour différentes résolutions différentes en application> res> valeurs.

enter image description here

+0

Ici le fichier dimens pour le dossier des valeurs normales contient la résolution pour moins de 5 pouces écran, valuessw600dp contient la résolution pour 5 à 7 pouces écran et les valeurs sw720dp contient la résolution pour ci-dessus 7 pouces écran –

+0

Merci pour la réponse. Je suis juste curieux, fait-il fonctionner l'application pour tous les types d'écrans comme avec différents rapports d'aspect ?? Parce que lors de l'utilisation de ces dossiers pour différentes dispositions, j'ai trouvé que mes interfaces utilisateur sont égarés, même pour un petit changement dans la dimension. – Swifty

+0

Ya ... vous devez vous concentrer sur la taille d'un écran. Laissez supposer 7 pouces, de sorte que vous devez changer uniquement dans le fichier de dimension sw600dp, pas besoin de changer dans d'autres dimensions ... tous sont les mêmes. –

0

Lorsque vous gonflez votre mise en page ou la configuration de votre point de vue du contenu, vous pouvez essayer la méthode faire sur votre demande si vous avez des activités de base ou des fragments de base

//At base activity/fragment 
protected boolean isLargeLayout() { 
    return getResources().getBoolean(R.bool.large_layout); 
} 
//Then at your real activity/fragment just call 
if(isLargeLayout()) { 
    //Set your layout knowing it's large 
}else{ 
    //Normal layout 
} 

Ou utiliser quelque chose droit comme

if(getResources().getBoolean(R.bool.large_layout)) { 
} 

Ou utilisez dimens.xml avec différents dps (je ne préfère pas cette méthode.J'aime Android à choisir qui est grand écran ou non)