如何更改今天的日期颜色android canlendarview

问题描述

我为styles创建了一些自定义CalendarView来更改文本颜色

    <style name="CalenderViewCustom" parent="Theme.AppCompat">
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorAccent">@color/colorAccentYellow</item>
        <item name="android:textColorPrimary">@color/colorPrimaryDarker</item>
    </style>

并将其应用到日历中,如下所示:

<CalendarView
     ...
     android:theme="@style/CalenderViewCustom"
     android:dateTextAppearance="@style/CalenderViewDateCustomText"
     android:weekDayTextAppearance="@style/CalenderViewWeekCustomText"
     ...
/>

我想将文本颜色“ 9”更改为与背景“ 16”不同的颜色。
当前,它们两个都由colorAccent属性确定。

enter image description here

还有其他属性可以单独更改其中一个属性吗?

解决方法

找到了一个很酷的解决方案:
我们可以使用CompactCalendarView程序包,该程序包有些旧,但仍然可以正常使用(Android 26 +)

例如,将“今天”的颜色设置为黑色:

       <com.github.sundeepk.compactcalendarview.CompactCalendarView
            android:layout_width="match_parent"
            android:layout_height="280dp"
            ...
            app:compactCalendarCurrentDayTextColor="@android:color/black"
            ...
            />

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...