2

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を必要とするBackgroundTintを設定しようとしました。ただし、下位バージョンもサポートする必要があります。

4

1 に答える 1