I want to access a resource like a String or a Drawable by its name and not its int id.
Which method would I use for this?
If I understood right, this is what you want
int drawableResourceId = this.getResources().getIdentifier("nameOfDrawable", "drawable", this.getPackageName());
Where "this" is an Activity, written just to clarify.
In case you want a String in strings.xml or an identifier of a UI element, substitute "drawable"
int resourceId = this.getResources().getIdentifier("nameOfResource", "id", this.getPackageName());
I warn you, this way of obtaining identifiers is really slow, use only where needed.
Link to official documentation: Resources.getIdentifier(String name, String defType, String defPackage)