maysara
maysara

Reputation: 6429

How to get a color ID by String value?

I have a String that has a value of "c104":

String color = "c104"; 

and I have a color with the name "c104":

<color name="c104">#000000</color>

How can I get that color by that String value?

I can't make it like R.id.color;

Is there any way to convert that String to an ID?

Upvotes: 6

Views: 1644

Answers (1)

Floern
Floern

Reputation: 33914

There is a getIdentifier() method to retrieve the resource ID for arbitrary resources, including colors:

String colorName = "c104";
int colorResId = getResources().getIdentifier(colorName, "color", getPackageName());

That would be the same as:

int colorResId = R.color.c104;

Upvotes: 9

Related Questions