Maison >Java >javaDidacticiel >Comment puis-je accéder aux ressources Android par nom plutôt que par identifiant ?
Accès aux ressources par nom dans Android
Lors du développement d'applications Android, il est souvent nécessaire d'accéder à des ressources telles que des chaînes, des dessins et des mises en page. Bien qu'il soit courant d'utiliser l'ID entier de la ressource, il peut y avoir des situations où il est préférable d'y accéder par son nom.
Méthode d'obtention de l'ID de ressource par nom
L'Android framework fournit une méthode pour récupérer l'ID d'une ressource en fonction de son name :
int resourceId = this.getResources() .getIdentifier("nameOfResource", "type", this.getPackageName())
Où :
Exemple d'utilisation
Pour accéder à une ressource de chaîne nommée "app_name " dans le fichier strings.xml :
int stringId = this.getResources() .getIdentifier("app_name", "string", this.getPackageName()); String appName = this.getString(stringId);
De même, pour accéder à une ressource dessinable nommée "image.png" dans le dossier dessinable :
int drawableId = this.getResources() .getIdentifier("image", "drawable", this.getPackageName()); Drawable drawable = this.getDrawable(drawableId);
Considérations sur les performances
Il est important de noter que l'accès aux ressources par nom à l'aide de getIdentifier() est relativement lent par rapport à à utiliser directement l'ID entier. Par conséquent, il est recommandé de n'utiliser cette méthode que lorsque cela est nécessaire, par exemple lorsqu'un chargement dynamique des ressources est requis.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!