我正在为我的应用程序使用支持库21。我的主题也在 values-v21 中定义,但DatePickerDialog
并未使用强调色作为背景和文本颜色。
我该怎么做才能将此颜色更改为强调色?
我当前的themes.xml是
values/themes.xml
<style name="AppTheme" parent="AppTheme.Base" />
<style name="AppTheme.Base" parent="Theme.AppCompat.Light.NoActionBar">
<item name="windowActionModeOverlay">true</item>
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
values-v21/themes.xml
<style name="AppTheme" parent="AppTheme.Base">
<item name="android:colorPrimary">@color/colorPrimary</item>
<item name="android:colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="android:colorAccent">@color/colorAccent</item>
<item name="android:alertDialogTheme">@style/AppTheme.AlertDialog</item>
</style>
<style name="AppTheme.AlertDialog" parent="android:Theme.Material.Light.Dialog.Alert">
<item name="android:colorPrimary">@color/colorPrimary</item>
<item name="android:colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="android:colorAccent">@color/colorAccent</item>
</style>
最佳答案
您的对话框主题需要扩展Theme.AppCompat.Light.Dialog
而不是Theme.Material.Light.Dialog.Alert
。这是一个例子:
<!-- Base Theme Styles -->
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<!-- my theme stuff -->
...
<!-- dialog theme stuff -->
<item name="android:dialogTheme">@style/AppTheme.DialogTheme</item>
</style>
<!-- Styles for pop-up dialogs -->
<style name="AppTheme.DialogTheme" parent="Theme.AppCompat.Light.Dialog">
<item name="android:colorPrimary">@color/primaryColor</item>
<item name="android:colorPrimaryDark">@color/primaryColorDark</item>
<item name="android:colorAccent">@color/accentColor</item>
</style>
关于android - Android DatePickerDialog配音颜色(在v21 +中),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27319516/