Pour récupérer de manière dynamique une image contenue dans le dossier de ressources à partir de la chaine de caractères représentant son nom, il faut réussir à retrouver son identifiant. Muni de cet identifiant le chargement de la ressource est naturel.
Code:
1 2 3 4
| Récupération de l'image (Drawable) à partir de son nom (String)
int pictureId =getResources().getIdentifier( message .getString( "fromPicture" ), "drawable" , "com.android2ee.tuto.gui" );
picture .setBackgroundDrawable(getResources().getDrawable( pictureId )); |
La méthode getResources appartient à la classe ContextWrapper dont étend Activity (entre autres) et renvoie un objet de type Resources. Cette classe (Resources) permet de manipuler les ressources de l'application, en particulier leur récupération.