如何以编程方式设置属性
How to set attribute programmatically
我有一个属性
<attr name="ColorMain" format="reference|color" />
如果我需要在 xml 文件中将其设置为颜色,那么我将编写以下内容
android:textColor="?attr/ColorText"
如何以编程方式执行此操作?
试过这样做,但效果不佳
et_name.setTextColor(R.attr.ColorTextNotActive);
你可以试试这个:
TypedValue typedValue = new TypedValue();
Theme theme = context.getTheme();
theme.resolveAttribute(R.attr.ColorTextNotActive, typedValue, true);
@ColorInt int color = typedValue.data;
et_name.setTextColor(color);
我有一个属性
<attr name="ColorMain" format="reference|color" />
如果我需要在 xml 文件中将其设置为颜色,那么我将编写以下内容
android:textColor="?attr/ColorText"
如何以编程方式执行此操作?
试过这样做,但效果不佳
et_name.setTextColor(R.attr.ColorTextNotActive);
你可以试试这个:
TypedValue typedValue = new TypedValue();
Theme theme = context.getTheme();
theme.resolveAttribute(R.attr.ColorTextNotActive, typedValue, true);
@ColorInt int color = typedValue.data;
et_name.setTextColor(color);