如何修复颜色底部面板的DatePickerDialog

时间:2019-05-08 22:58:42

标签: android android-datepicker datepickerdialog

颜色底部面板DatePickerDialog为白色。

需要设置自定义颜色

我的风格

    <style name="DefaultTheme.DatePicker" parent="@android:style/Widget.Material.Light.DatePicker">
        <item name="android:headerBackground">#FF00C853</item>
        <item name="android:background">#FF000000</item>
        <item name="android:calendarTextColor">#000000</item>
        <item name="android:yearListSelectorColor">#000000</item>
        <item name="android:datePickerMode">calendar</item>
    </style>

并使用

<item name="android:datePickerStyle">@style/DefaultTheme.DatePicker</item>

now so

1 个答案:

答案 0 :(得分:1)

要设置DatePickerDialog底部面板的颜色,请参阅此链接:

Change Datepicker dialog color for Android 5.0

依次需要执行的三个步骤是:

  1. )覆盖应用程序基本主题中的datePickerDialogTheme:

    <style name="AppBaseTheme" parent="android:Theme.Material.Light"> <item name="android:datePickerDialogTheme">@style/MyDatePickerDialogTheme</item> </style>

2。)覆盖MyDatePickerDialogTheme内的colorAccent

<style name="MyDatePickerDialogTheme" parent="android:Theme.Material.Light.Dialog">
    <item name="android:colorAccent">@color/date_picker_accent</item>

    <!-- No need to override 'datePickerStyle' -->
    <!-- <item name="android:datePickerStyle">@style/MyDatePickerStyle</item> -->
</style>

3。)这样称呼

DatePickerDialog dpd = new DatePickerDialog(this, new DatePickerDialog.OnDateSetListener() {
    @Override
    public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {

    }
 }, 2015, 5, 22);

 dpd.show();