【问题标题】:Android: How to change the color of the dateselector in Datepicker widget?Android:如何更改 Datepicker 小部件中日期选择器的颜色?
【发布时间】:2015-08-11 06:24:57
【问题描述】:

这是我第一次发帖。

我已在我的应用中成功实现了 Datepicker(仅针对 SDK 21 及更高版本)。我还想设计我的 Datepicker 以与应用程序的其余部分融合。这就是我所拥有的:

<style name="MyDatePickerDialogTheme" parent="Theme.AppCompat.Light.Dialog">
    <item name="android:datePickerStyle">@style/MyDatePickerStyle</item>
    <item name="android:colorAccent">@color/primDark</item>
</style>

<style name="MyDatePickerStyle" parent="@android:style/Widget.Material.Light.DatePicker">
    <item name="android:headerBackground">@color/prim</item>
    <item name="android:calendarTextColor">@color/primDark</item>
    <item name="android:dayOfWeekBackground">@color/primDark</item>
    <item name="android:yearListSelectorColor">@color/accent</item>
    <item name="android:datePickerMode">calendar</item>
</style>

我在日历中找不到更改日期选择器颜色的属性。没有列出的属性here 这样做。但是,我能够使用属性“yearListSelectorColor”更改年份选择器的颜色(请参见屏幕截图的右侧)。如何在左侧为相应的选择器和选定的文本颜色着色?

澄清一下,这就是我的 Datepicker 的样子:Screenshots

所以如果有人知道如何摆脱标准的蓝绿色,请告诉我。

谢谢!

【问题讨论】:

    标签: android colors datepicker calendar selector


    【解决方案1】:

    好的,我想我明白了。

    我拼命想在 MyDatePickerStyle 中找到一个属性。当我重新考虑整个继承层次结构时,我想到了解决方案。我只需要将 colorAccent 添加到 MyDatePickerDialogTheme。

    <style name="MyDatePickerDialogTheme" parent="Theme.AppCompat.Light.Dialog">
        <!-- this is new -->
        <item name="colorAccent">@color/accent</item>
    
        <item name="android:datePickerStyle">@style/MyDatePickerStyle</item>
        <item name="android:colorAccent">@color/primDark</item>
    </style>
    
    <style name="MyDatePickerStyle" parent="@android:style/Widget.Material.Light.DatePicker">
        <item name="android:headerBackground">@color/prim</item>
        <item name="android:calendarTextColor">@color/primDark</item>
        <item name="android:dayOfWeekBackground">@color/primDark</item>
        <item name="android:yearListSelectorColor">@color/accent</item>
        <item name="android:datePickerMode">calendar</item>
        <item name="android:minDate">01/01/2000</item>
    </style>
    

    不知何故,我认为每个主题都会自动从 AppTheme 获取原色。

    所以希望这对将来的某人有所帮助。

    【讨论】:

    • 这对我不起作用,日期选择器没有改变
    【解决方案2】:

    要更改 DatePicker 中选择器圆圈的颜色,请在主题中使用 android:colorControlActivated 属性。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-11-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-12
    • 2023-03-19
    • 1970-01-01
    相关资源
    最近更新 更多