Quelle est la différence entre les trois dossiers pouvant être dessinés dans le dossier res de la hiérarchie du projet? Si j'ai une image à mettre dans un dossier, dans quel dossier est-ce que je le mets?Dossiers pouvant être tirés dans le dossier res?
Répondre
Je vais deviner que "les trois dossiers drawable" sont drawable-ldpi
, drawable-mdpi
et drawable-hdpi
. Dans ce cas, si vous vous en tenez à tous ces dossiers, vous devez placer une image dans chacun d'eux, dimensionnée pour correspondre à la densité d'écran indiquée. Ceci est discuté dans le online documentation ainsi que ce blog post. Vous pouvez trouver un ensemble de projets exemples illustrant l'utilisation de différentes ressources pouvant être mises en forme en fonction de la densité d'écran here.
Si vous débutez dans le développement Android, vous pouvez vous débarrasser de ces trois répertoires et créer un seul répertoire drawable
, en y ajoutant votre image. Éventuellement, pour une application de qualité, vous voudrez tester vos images sur différents périphériques/émulateurs avec différentes densités d'écran, et éventuellement avoir des images différentes pour chaque densité afin d'améliorer l'apparence de votre application.
Voici une référence à multi device options.
Comme l'a dit @CommonsWare, vous n'avez pas besoin de mettre des ressources en tout sauf res/layout/ou drawable/mais si vous voulez que votre programme d'avoir une meilleure expérience sur plusieurs appareils avec différents écrans/densité/langues que vous voudrez peut-être considérer que vous avez cette option.
Egalement intéressant, bien que n'étant pas spécifique aux images, c'est la façon dont android gère les ressources. Il leur donne un ordre de chargement, où plus spécifique signifie qu'il sera choisi moins spécifique. Par exemple, vous avez trois valeurs de chaîne dans strings.xml dans votre dossier de valeurs. Par exemple, vous avez trois valeurs de chaîne dans strings.xml. Vous avez également une chaîne spécifique dans un dossier appelé valeurs-en. Lorsque Android ouvre votre application et que votre locale correspond à en, elle chargera deux valeurs par défaut du dossier values et la troisième, plus spécifique, de values-en. Si votre locale est ru, elle utilisera simplement la valeur par défaut car vous n'avez pas de dossier values-ru.
La même chose est vraie pour les images. Si Android ne peut pas trouver d'images pour votre variante d'écran spécifique, il utilisera les valeurs par défaut du dossier drawable. À mon avis, il est recommandé d'avoir des valeurs/images par défaut dans vos dossiers génériques comme des valeurs/drawable et des valeurs spécifiques/images dans des dossiers spécifiques. De cette façon, les appareils actuels et futurs auront au moins un moyen d'afficher votre contenu jusqu'à ce que vous puissiez fournir des versions spécifiques.
- 1. Le nombre maximal de fichiers pouvant être importés dans un dossier SharePoint dans un dossier est-il limité?
- 2. différentes résolutions pouvant être retirées
- 3. res et src relation de dossier en eclipse android
- 4. Image pouvant être dessinée dans GWT
- 5. Kohana - sous-dossiers dans le dossier des vues
- 6. SSH/Shell - Supprimer tous les dossiers portant le nom "____" dans le dossier ET les sous-dossiers
- 7. Recherche d'un dossier dans les dossiers Outlook
- 8. res/directory tree
- 9. faire des dossiers sous le dossier accessible par leur URL
- 10. Android - mettre à jour un fichier dans le dossier res/raw
- 11. Comment gonfler core/res/res/layout/simple_dropdown_item_2line.xml
- 12. Menu contextuel des dossiers (Dossier uniquement)
- 13. Comment .gitignore tous les fichiers/dossiers dans un dossier, mais pas le dossier lui-même?
- 14. Catégoriser les dossiers Exchange dans le dossier Distinguished et dossier normal
- 15. requête linq avec paramètre pouvant être vide
- 16. Affichage d'une propriété pouvant être liée
- 17. Ajout d'une ressource pouvant être appelée
- 18. Objets pouvant être déplacés dans WPF dans ItemsControl?
- 19. Plusieurs listes pouvant être triées avec jquery
- 20. nombre maximal pouvant être envoyé en kannel
- 21. Copier le dossier de manière récursive, excluant certains dossiers
- 22. comment copier un fichier stocké dans /data/data/com.sai.myproj/files/a.txt dans le dossier res dans Android
- 23. URL Réécriture de plusieurs dossiers dans un dossier
- 24. Silverlight 4 onglets pouvant être fermés dans TabControl
- 25. Contrôles d'accueil gratuits pouvant être ancrés dans une application tierce
- 26. couleur définie dans res non utilisables dans le code
- 27. Modèle dans un sous-dossier dans le dossier des modèles
- 28. Dossier de solution ne peut pas être vérifié dans TFS?
- 29. Le fichier Enclojure NBM s'avère être un dossier
- 30. Comment obtenir la liste des dossiers dans ce dossier?
Vous n'avez pas besoin de mettre une image dans chaque; la plate-forme choisira l'image qui correspond le mieux à la densité de l'appareil, et elle ne correspond pas à l'échelle exacte. De même, pour les applications ciblant la version 1.6 ou ultérieure, il est fortement recommandé de placer vos bitmaps dans un répertoire correspondant à la densité définie (cela n'a aucun sens d'avoir un bitmap sans spécification de densité); Bien sûr, les non-bitmaps, comme les divers tirages XML, n'ont généralement pas besoin de cela et devraient être dans le répertoire simple. Voir aussi: http://developer.android.com/guide/topics/resources/resources-i18n.html#AlternateResources – hackbod
LINT se plaindra si vous placez des images bitmap évolutives dans le dossier/drawable. Il est actuellement destiné aux éléments sans densité, tels que les éléments dessinables basés sur xml. –