问题描述
我为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
属性确定。
解决方法
找到了一个很酷的解决方案:
我们可以使用CompactCalendarView程序包,该程序包有些旧,但仍然可以正常使用(Android 26 +)
例如,将“今天”的颜色设置为黑色:
<com.github.sundeepk.compactcalendarview.CompactCalendarView
android:layout_width="match_parent"
android:layout_height="280dp"
...
app:compactCalendarCurrentDayTextColor="@android:color/black"
...
/>