1. ホーム
  2. android

[解決済み] Android 6.0 Marshmallow (API 23) で getColor(int id) が非推奨になりました。

2022-03-24 02:24:15

質問

Resources.getColor(int id) メソッドは非推奨となりました。

@ColorInt
@Deprecated
public int getColor(@ColorRes int id) throws NotFoundException {
    return getColor(id, null);
}

どうすればいいのでしょうか?

解決方法は?

Androidサポートライブラリ23から起動します。
新しい getColor() メソッドが追加されました。 ContextCompat .

公式のJavaDocに記載されている説明です。

<ブロッククオート

特定のリソース ID に関連付けられた色を返します。

M からは、指定された Context のテーマに合わせた色が返されるようになります。


だから を呼び出すだけです。 :

ContextCompat.getColor(context, R.color.your_color);


を確認することができます。 ContextCompat.getColor() ソースコードはGitHubにあります。 .