J'ai ajouté une image à mon Android que je veux utiliser dans l'interface utilisateur. J'ai ajouté le fichier my-image.png au drawable directory (à tous les 4 répertoires drawable créés avec le projet), et ajouté le ImageView
à la mise en page:
<ImageView
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:id="@+id/imageView"
Android:layout_alignParentBottom="true"
Android:layout_alignLeft="@+id/textView"
Android:layout_marginBottom="63dp"
Android:src="@drawable/my-image" />
Le problème est que j'obtiens l'erreur suivante:
Problèmes de rendu
Impossible de convertir @ drawable/my-image en un drawable
Voici la capture:
De plus, si j'essaie de compiler le projet, j'obtiens l'erreur suivante:
Gradle: l'exécution a échoué pour la tâche ': MyProject: processDebugResources'.
Pourquoi ai-je ces erreurs et comment puis-je les résoudre? Suis-je en train de manquer quelque chose? Je viens de commencer Android development.
Gradle: Execution failed for task ':MyProject:processDebugResources'.
car vous avez une erreur de convention de dénomination dans les ressources
file name: must contain only [a-z0-9_.]
Renommez le nom du fichier en my_image
Rename this drawable @drawable/my-image to @drawable/my_image
Essayez d'utiliser le soulignement et les petits caractères dans le nom de fichier, par exemple
my_image.png
Essayez d'utiliser uniquement abc ... xyz et 0123 ... 9, n'utilisez pas -, utilisez plutôt _ (tiret bas).
Utilisation my_name
au lieu de my-name
, car les tirets (-) ont une signification particulière dans le codage, donc il ne peut pas être utilisé littéralement avec des chaînes.
Si la convention de dénomination est correcte, essayez:
Ouvrez la boîte de dialogue des ressources et voyez si l'aperçu png de l'image est affiché.
Sélectionnez l'image en mode Création> Aller aux propriétés> Cliquez sur le bouton Points de suspension> Dessiné> Recherchez votre image png et cliquez dessus.
Si l'aperçu n'est pas affiché, annulez les ressources et essayez de réenregistrer l'image à nouveau au format png.
Cet exemple utilise Photoshop CS2. Ouvrez l'image dans Photoshop et sélectionnez Fichiers> Enregistrer pour le Web> Cliquez sur Enregistrer. (N'utilisez pas Fichier> Enregistrer sous)