1. ホーム
  2. android

[解決済み] アクセントカラーをプログラムで取得するには?

2023-01-05 22:07:50

質問

以下のようなスタイルで設定されたアクセントカラーを、どのようにプログラムで取得するのでしょうか。

    <item name="android:colorAccent">@color/material_green_500</item>

どのように解決するのですか?

この方法で、現在のテーマから取得することができます。

private int fetchAccentColor() {
    TypedValue typedValue = new TypedValue();

    TypedArray a = mContext.obtainStyledAttributes(typedValue.data, new int[] { R.attr.colorAccent });
    int color = a.getColor(0, 0);

    a.recycle();

    return color;
}