1. ホーム
  2. アンドロイド

[解決済み】AndroidのMaterial DesignとAppCompatでボタンを彩る

2022-04-06 14:59:43

質問

の前に AppCompat 本日アップデートがあり、Android Lではボタンの色を変更することができましたが、古いバージョンではできませんでした。新しいAppCompatのアップデートを入れた後、どちらのバージョンでも色を変更することができず、試してもボタンが消えてしまうだけです。どなたか、ボタンの色を変更する方法をご存知でしょうか?

以下の写真は、私が実現したいことを示したものです。

白いボタンはデフォルト、赤いボタンは私が欲しいものです。

これは、以前、ボタンの色を変更するために styles.xml :

<item name="android:colorButtonNormal">insert color here</item>

と動的に行うことです。

button.getBackground().setColorFilter(getResources().getColor(insert color here), PorterDuff.Mode.MULTIPLY);

また、テーマの親を @android:style/Theme.Material.Light.DarkActionBar から Theme.AppCompat.Light.DarkActionBar

解決方法は?

サポートライブラリrev.22(2015年3月13日(金))で正式に修正されました。関連するgoogle code issueをご覧ください。

https://issuetracker.google.com/issues/37008632

使用例

theme.xmlを使用します。

<item name="colorButtonNormal">@color/button_color</item>

v21/theme.xml

<item name="android:colorButtonNormal">@color/button_color</item>