私は現在のテーマ属性からボタンの色を与えようとしています:android.R.attr.colorPrimary
またはR.attr.colorPrimary
黄色を返すはずですが、いつも私に青い色を与えます代わりに!私はマニフェストにもテーマを設定しました。android.R.attr.colorPrimaryは常に私に間違った色を与えます
たとえば、ツールバーの背景色をandroid:background="?attr/colorPrimary"
に設定すると、正しい色が得られますが、コードから設定した場合は正しく表示されません。
これは私が私のボタンの色を設定しようとしている方法です:
TypedValue typedValue = new TypedValue();
App.getAppContex().getTheme().resolveAttribute(android.R.attr.colorPrimary, typedValue, true);
buttonColor = typedValue.data;
addButton.setText("SAVE");
addButton.getBackground().setColorFilter(buttonColor, PorterDuff.Mode.MULTIPLY);
これは
<style name="AppTheme_Yellow" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimary">@color/primaryYellow</item>
<item name="colorPrimaryDark">@color/primary_darkYellow</item>
<item name="colorAccent">@color/accentYellow</item>
<item name="android:textColorPrimary">@color/primary_textYellow</item>
<item name="android:textColorSecondary">@color/secondary_textYellow</item>
<item name="android:icon">@color/iconsYellow</item>
<item name="actionOverflowButtonStyle">@style/OverFlowStyle</item>
<item name="popupMenuStyle">@style/popupMenuStyle</item>
私の「イエロー」のテーマである「黄色」の後ろの色テーマ:
<color name="primaryYellow">#FFC107</color>
<color name="primary_darkYellow">#FFA000</color>
<color name="primary_lightYellow">#FFECB3</color>
<color name="accentYellow">#607D8B</color>
<color name="primary_textYellow">#212121</color>
<color name="secondary_textYellow">#727272</color>
<color name="iconsYellow">#212121</color>
<color name="dividerYellow">#B6B6B6</color>
を? – AkashBhave
ボタンを含むDialogFragmentクラスで – Muddz
Nevermind私はただ解決しました!私は間違った文脈を使った!私は答えを投稿します。@ AkashBhave – Muddz