Comment voulez-vous faire des mises en page pour plusieurs Android tailles d'écran?
J'ai fait quelques recherches sur le renforcement des mises en page qui fonctionnent pour plusieurs tailles d'écran et je suis à la recherche de quelques éclaircissements.
Il est de pratique courante de faire juste une mise en page distincte fichier pour chacune des trois tailles d'écran (petit, moyen, grand) ou vous pouvez accomplir cela avec une méthode plus simple?
J'ai testé mes projets sur grand écran de l'appareil, et même si je les utilise DIPs (densité de pixels indépendants) pour le rembourrage, les marges, etc, il est toujours en scrunches des trucs quand je l'ai vue sur les petits écrans. Devrais-je être la conception de mes projets de taille moyenne, les écrans et puis juste permettre à Android à l'échelle de manière appropriée?
Je ne suis pas sûr si c'est une bonne question ou pas, mais je suis à la recherche de ce que la pratique courante est de concevoir pour plusieurs tailles d'écran. Que faites-vous?
Edit: En plus de cela, par exemple, disons que j'ai un bouton qui est 40dip au-dessus du bas de l'écran, il faut que j'littéralement écrire 40dip, ou dois-je utiliser une sorte de pixel mathématiques comme 40 * screenWidth /blahblah ou quelque chose pour qu'il évolue en fonction de la taille de l'écran, l'utilisateur a? J'ai peu d'expérience avec l'Isu...
- Oui, vous pouvez accomplir cela en preety façon simple, voir ma réponse stackoverflow.com/a/16518557/1939564
Vous devez vous connecter pour publier un commentaire.
Il y a deux axes à considérer quand il s'agit de la taille de l'écran: physique de la taille et de la densité. La densité est gérée en fournissant des mesures dans les trempettes et mise à l'échelle des ressources appropriées. Mais la densité n'implique pas toujours la taille ou vice versa. Voir http://developer.android.com/guide/practices/screens_support.html pour certains plus d'info sur la mécanique.
Il n'est pas commun ou recommandé d'avoir des configurations différentes en fonction de chaque écran résolution vous soutenir, mais il est tout à fait raisonnable de concevoir des mises en page différentes pour différentes classes de taille (petit, moyen, grand). Différentes tailles d'écrans peuvent bénéficier de l'ajout, le retrait ou le repositionnement de certains éléments de navigation en fonction de l'application.
Au sein d'une certaine classe de taille, assurez-vous que vos mises en page tolérer les écarts exactement à la résolution de l'écran. Comme Falmarri suggéré, l'utilisation relative de mises en page, les poids, et les autres outils disponibles pour permettre à votre disposition étirer en douceur.
La règle générale est d'utiliser la Densité de Pixels Indépendants (creux) pour la taille des définitions de la mise en page xmls - je vous vois déjà faire. Faire je viens donc de la seule disposition pour toutes sortes d'appareils. Ce qui doit être découpé est graphique. Pour cela j'ai utiliser 3 différents drawable répertoires - 'drawable-ldpi', 'drawable-mdpi" et "drawable-hdpi'. Ceci est fait afin d'images à la même taille (disons, en millimètres) sur écran différentes densités (en supposant que la taille de l'écran est le même - il Normal, par exemple), ils doivent être mis à l'échelle comme suit:
C'est probablement un mauvais conseils. Cependant, si vous regardez la Google chart de Tailles et Densités d'Écran vous pouvez décider de ne pas investir vos efforts supplémentaires à des tests approfondis pour les Grands écrans, car il n'y a presque pas de tels dispositifs sur le marché.
Pas de faire des mises en page distinctes n'est pas vraiment une pratique courante. Seulement quand vous avez des images qui ne peuvent pas être étiré, est-ce vraiment de la manière recommandée.
Trucs aurez toujours l'air un peu tendu/comprimé lors de l'affichage sur les appareils avec un plus petit/plus grand des écrans. C'est le genre de définition d'une taille différente de l'écran. Vous devriez utiliser relatif mises en page et de laisser android de contrôle du pixel nombre.