Dossiers pouvant être dessinés dans le dossier res?

Quelle est la différence entre les trois dossiers pouvant être dessinés dans le dossier res dans la hiérarchie du projet? Si j’ai une image à mettre dans un dossier, dans quel dossier est-ce que je le mets?

Je vais supposer que “les trois dossiers pouvant être dessinés” sont drawable-ldpi , drawable-mdpi et drawable-hdpi . Dans ce cas, si vous vous en tenez à tous ces dossiers, vous devez mettre une image par taille, dimensionnée pour correspondre à la densité d’écran indiquée. Ceci est discuté dans la documentation en ligne ainsi que ce billet de blog . Vous pouvez trouver un ensemble de projets illustrant l’utilisation de différentes ressources pouvant être dessinées en fonction de la densité de l’écran.

Si vous drawable 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 drawable votre image. Finalement, pour une application de qualité, vous souhaiterez tester vos images sur différents appareils / émulateurs avec différentes densités d’écran et possiblement avoir des images différentes pour chaque densité afin d’améliorer l’apparence de votre application.

Voici une référence aux options multi-périphériques .

Comme indiqué par @CommonsWare, vous n’avez pas besoin de placer des ressources dans res / layout / ou drawable / mais si vous voulez que votre programme ait une meilleure expérience sur plusieurs appareils avec différents écrans / densité / langues, vous pouvez envisager que vous avez cette option.

La manière dont Android gère les ressources est également intéressante, mais pas spécifique aux images. 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 ssortingngs.xml dans votre dossier de valeurs. Vous avez également une chaîne spécifique dans un dossier appelé values-en. Lorsque Android ouvrira votre application et que vos parameters régionaux correspondent à, il chargera deux valeurs par défaut à partir du dossier de valeurs et la troisième, plus spécifique, à partir de valeurs-en. Si vos parameters régionaux sont ru, il 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 trouve pas d’images pour votre variante d’écran spécifique, il utilisera les valeurs par défaut du dossier pouvant être dessiné.

A mon avis, il est recommandé d’avoir des valeurs / images par défaut dans vos dossiers génériques, telles que des valeurs / images et des valeurs / images pouvant être dessinées et spécifiques dans des dossiers spécifiques. De cette façon, les périphériques actuels et futurs auront au moins un moyen d’afficher votre contenu jusqu’à ce que vous puissiez fournir des versions spécifiques.