【问题标题】:Android: How to change DatePickerDialog colors in Theme.Holo.Light.Dialog.MinWidth?Android:如何更改 Theme.Holo.Light.Dialog.MinWidth 中的 DatePickerDialog 颜色?
【发布时间】:2018-05-28 14:33:20
【问题描述】:

我正在使用 Api 14,我发现从 DataPickerDialog 中隐藏日历视图的唯一方法是在创建时使用 Theme.Holo.Light.Dialog.MinWidth。 但现在我无法更改文本和标题的颜色。

Image of DatePickerDialog

如何更改蓝色和确定/取消按钮?

styles.xml 代码

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <item name="colorPrimary">@color/backtext</item>
    <!-- Customize your theme here. -->
</style>
<style name="DatePickerTheme" parent="@android:style/Theme.Holo.Light.Dialog.MinWidth">
    <item name="colorAccent">@color/border</item>
    <item name="android:headerBackground">@color/border</item>
    <item name="android:textColorHighlight">@color/backtext</item>
</style>

DatePickerDialog 创建代码:

    private void InitDatePicker() {
            Calendar newCalendar = Calendar.getInstance();
            //android.R.style.Theme_Holo_Dialog_MinWidth
            //

            datePickerDialog = new DatePickerDialog(this, R.style.DatePickerTheme,new DatePickerDialog.OnDateSetListener() {
                public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
                    Calendar newDate = Calendar.getInstance();
                    newDate.set(year, monthOfYear, dayOfMonth);
                    dtVenc.setText(new SimpleDateFormat().format(newDate.getTime()));
                }
            }, newCalendar.get(Calendar.YEAR), newCalendar.get(Calendar.MONTH), newCalendar.get(Calendar.DAY_OF_MONTH));
            HideDayButton(datePickerDialog.getDatePicker());
            datePickerDialog.setTitle("Vencimento");
}

【问题讨论】:

    标签: android android-theme android-datepicker


    【解决方案1】:

    试试这个

    您应该使用headerBackground 而不是android:headerBackgroundandroid:textColorHighlight 相同删除android

    这应该可以工作

    【讨论】:

    • 删除android会导致编译器错误“找不到属性”
    【解决方案2】:

    你可以试试这个方法

    <style name="abirStyle" parent="@android:style/Theme.Holo.Light.Dialog.NoActionBar">
        <item name="android:textColor">@color/colorPrimary</item>
        <item name="android:background">@null</item>
        <item name="android:textColorPrimary">@color/colorPrimary</item>
    </style>
    

    【讨论】:

      【解决方案3】:

      你可以试试这个方法

      <style name="abirStyle" parent="@android:style/Theme.Holo.Light.Dialog.NoActionBar">
      <item name="android:textColor">@color/colorPrimary</item>
      <item name="android:background">@null</item>
      <item name="android:textColorPrimary">@color/colorPrimary</item>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-06-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-09-02
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多