我已经定义了一个属性(我在主题中设置了它)
<attr name="primaryColor" format="color|reference" />
如何获取代码中的颜色?我试过getResources().getColor(R.attr.primaryColor)
,但这失败了......
答案 0 :(得分:2)
试试这个:
需要一个上下文。
TypedValue typeValue = new TypedValue();
context.getTheme().resolveAttribute(R.attr.primaryColor, typeValue, true);
if (typeValue.type >= TypedValue.TYPE_FIRST_COLOR_INT &&
typeValue.type <= TypedValue.TYPE_LAST_COLOR_INT) {
// R.attr.primaryColor is a color
int color = typeValue.data;
} else {
// R.attr.primaryColor is not a color
}