java - 更改 CalendarView 中的 "Month"文本颜色

标签 java android android-layout android-view calendarview

我研究了使用自定义主题通过各种标签设置 textColor 的多个选项,但它们似乎都不起作用。我已附上屏幕截图以供引用。这是当应用程序的主题为深色时我使用的自定义主题。

<style name="CalendarWeekDateTextDark" parent="TextAppearance.AppCompat.Button">
    <item name="android:textColor">@color/colorWhite</item>
</style>

我已在 XML 文件中将其用作

<CalendarView
    android:id="@+id/calendarView"
    android:layout_width="0dp"
    android:layout_height="0dp"
    android:dateTextAppearance="?attr/CalendarWeekDatTextDark"
    android:weekDayTextAppearance="?attr/CalendarWeekDatTextDark"
    app:layout_constraintBottom_toTopOf="@+id/bottomGuideline"
    app:layout_constraintEnd_toEndOf="@+id/endGuideline"
    app:layout_constraintStart_toStartOf="@+id/startGuideline"
    app:layout_constraintTop_toBottomOf="@+id/topGuideline" />

截图:

最佳答案

styles.xml中定义了以下内容:

<style name="CustomCalendarMonth" parent="AppTheme">
    <item name="android:textColorPrimary">@color/orange</item>
</style>

<style name="CustomCalendarDay" parent="TextAppearance.MaterialComponents.Caption">
    <item name="android:textColor">@color/green</item>
</style>

<style name="CustomCalendarWeek" parent="TextAppearance.MaterialComponents.Caption">
    <item name="android:textColor">@color/purple</item>
</style>

然后在 xml 中:

<CalendarView
    android:theme="@style/CustomCalendarMonth"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:dateTextAppearance="@style/CustomCalendarDay"
    android:weekDayTextAppearance="@style/CustomCalendarWeek" />

输出如下:

关于java - 更改 CalendarView 中的 "Month"文本颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60606742/

相关文章:

java - Android - 媒体播放器 : How to separating fastForward to another method (that later will be call)?

java - 将 ByteArray 转换为固定长度字符串时出现异常

java - 无法实例化以下类

android - 使用 xml 按下和释放之间的不同背景颜色?

java - 解码 : com. google.android.play.core.review.b 时找不到类

Java错误: could not find or load main class Vehicle

java - 扫描文本并替换(如果匹配)

android - 如何在android中获得距离公里?

android - 检索 Listview 行数据(由两个 TextView 组成)

java - 使用 Unity3D 需要原生 Android Activity 和 Java 中的触摸事件