我正在使用 TextInput 布局创建一个文本输入框。我想根据输入框的不同变体应用可绘制和颜色资源。我在 res/color 和 res/drawable 目录下创建了不同的 xml 资源文件。
public enum InputTextVariant {
Standard, Stepper, MultiLine;
}
public void setVariant(int variantParam) {
Drawable d;
ColorStateList csl;
InputTextVariant variant = SpectrumInputTextVariant.values()[variantParam];
switch (variant) {
case Standard:
csl = AppCompatResources.getColorStateList(getContext(), R.color.textcolor_btn_cta);
d = AppCompatResources.getDrawable(getContext(), R.drawable.btn_cta_material);
//setTextColor(csl);
setBackgroundTintList(csl);
setBackground(d);
我想为按钮使用类似于 setTextColor 的东西。我为不同的状态(禁用、悬停、聚焦等)指定了不同的颜色和形状。如何加载此 TextInputLayout 的颜色资源。我试图设置需要 API 版本 >=21 的背景色。但我也需要支持较低版本。