2017-08-09 13 views
0

J'ai déjà lu beaucoup de choses sur ces choses, tant de threads, mais il y a encore des choses que je ne comprends pas comment, en tant que développeur et concepteur, éviter les problèmes avec des écrans de tailles différentes. Donc ma question est principalement: Quelle est la différence entre mettre des drawables dans mdpi, hdpi, xhdpi, dossiers xxhdpi par opposition aux dossiers normaux, grands, xlarge? Dois-je faire les deux? Je veux que les drawables agissent comme ceci: Si cela prend 50% de la largeur de l'écran sur un smartphone, cela devrait prendre 50% de l'écran sur une tablette. C'est là aussi que je suis confus - Mon téléphone et ma tablette sont 1920x1080 et les deux tombent dans le seau xhdpi (je crois), mais leur taille d'écran physique est très différente.Les densités d'écran et les tailles sur Android (Diff entre grand/x-grand .. // hdpi, xhdpi ...)

Maintenant, j'économise drawables selon les ratios mdpi, hdpi .... Par conséquent, j'obtenir des résultats comme celui-ci sur le téléphone: enter image description here

Quand je juste par curiosité créé des dossiers pour dessinables grand et xlarge (je ne savais pas les rapports), je reçois ce qui est plus proche de ce que je m visant (mais est évidemment trop grand): enter image description here

Mais à quoi ça sert d'utiliser les seaux xhdpi (etc)? Est-ce que je comprends cela complètement faux? Quelqu'un s'il vous plaît éclairer moi. J'espère que cette question est logique. Mon point est - je veux les échelles de texte et d'images pour remplir autant de l'écran sur une tablette que sur un smartphone.

Merci

Répondre

1

Nous développeurs de créer simplement drawbles pour mdpi, hdpi, xhdpi, xxhdpi parce que la résolution d'écran des appareils peut-être différent. Alors que dans le cas de la normale, grand, xlarge dossiers, il est utilisé pour le cas des tailles d'écran.Nous utilisons cette qualification qualificatifs (mdpi, hdpi, xhdpi, xxhdpi) parce que par exemple pour téléphone à faible budget, résolution peut-être moins et montrera 48px drawable plus grande tandis que les appareils haut de gamme le montreront plus petit. C'est pourquoi nous créons des drawables pour différentes résolutions de téléphones variant de 42 (peut-être) à 192 px.Similairement, de grands dossiers xlarge sont utilisés en ce qui concerne la taille de l'écran. Si vous souhaitez compresser la taille de l'application, vous pouvez utiliser des éléments vectoriels. Ils sont juste créés pour une fois et semblent cohérents à chaque fois. Pour les icônes personnalisées, exportez-le au format .svg ou .psd et créez-le comme dessinable vectoriel via studio android.

Editer: Je crée habituellement mon logo sur Photoshop et le studio android l'exporte efficacement au vecteur drawable.
Les grands écrans sont au moins de 960dp x 720dp.
les grands écrans sont au moins 640dp x 480dp.
Les écrans normaux sont au moins de 470dp x 320dp.
petits écrans sont au moins 426dp x 320dp.
Les tirables vectoriels sont placés dans le dossier drawables. Il y a un avantage supplémentaire à utiliser des éléments vectoriels qui peuvent être animés. Commençant avec Android 3.2 (niveau API 13), ces petits groupes de taille, petits, normaux, grands, sont abandonnés au profit d'une nouvelle technique de gestion des tailles d'écran en fonction de la largeur d'écran disponible. Si vous développez pour Android 3.2 et supérieur, utilisez les dossiers mdpi, hdpi, xhdpi, xxhdpi. Les qualificatifs de configuration (décrits en détail ci-dessous) que vous pouvez utiliser pour les ressources spécifiques à la densité sont ldpi (faible), mdpi (moyen), hdpi (haut), xhdpi extra-haut), xxhdpi (extra-extra- haut), et xxxhdpi (extra-extra-extra-haut).
écran Densité de dispositifs

Un ensemble de six densités généralisées:
LDPI (bas) ~ 120dpi
mdpi (moyen) ~ 160dpi
hdpi (haut) ~ 240dpi
xhdpi (extra-haute) ~ 320dpi
xxhdpi (extra-extra-haute) ~ 480dpi
xxxhdpi (extra-extra-extra-haute) ~ 640dpi

Images tailles selon les dossiers.
36x36 (0,75x) pour basse densité
48x48 (ligne de base de 1,0x) pour moyenne densité
72x72 (1.5x) pour haute densité
96x96 (2.0x) pour extra-haute densité
144x144 (3.0x) pour extra-extra-haute densité
192x192 (4.0x) pour extra-extra-extra-haute densité. J'espère que cela vous aidera. Vous me demandez plus en détail à ce sujet dans les commentaires.

+0

Bon, c'est logique. Alors qu'en est-il des graphiques qui ne peuvent pas être réalisés en tant que drawables vectoriels? Par exemple le logo? Quels dossiers/tailles dois-je enregistrer, de sorte que cela semble cohérent? En outre, quels sont les rapports entre normal, grand et xlarge et petit? Devrais-je l'inclure dans ces + hdpi xhdpi etc? –

+0

Ok, mais j'aimerais en savoir plus sur les images non vectorielles, png. Que dois-je faire et quels dossiers/tailles dois-je inclure pour qu'ils s'affichent bien sur toutes sortes d'écrans? –

+0

Merci de choisir ma réponse utile et correcte @Samuel Bañas –