Accessing Android Resources By Name at Runtime

Use the getIdentifier method passing it the name of your resource, the resource type (id, raw) and your package name ( just use getPackageName())

int id = getResources().getIdentifier("name_of_resource", "id", getPackageName());

After that you can use the id just like you would at compile time using the R class.

Updated: May 21, 2010 – The code that was here for a long time was awful and dated, so I’ve updated this post.