如何更改材质日历背景?我正在设置白天和夜间主题,除了夜间模式外,它正在工作,其中设置的颜色背景未正确应用。
这是夜间预期的背景颜色
这是夜晚的实际背景颜色
尽管
colorSurface
与常规 MaterialAlertDialog
具有相同的值,但 MaterialCalendar
无法遵循此特定颜色。
<!-- DatePicker theme on both light and night mode -->
<style name="AppCalendar" parent="@style/ThemeOverlay.Material3.MaterialCalendar" tools:keep="@style/AppCalendar">
<!-- Background color -->
<item name="colorSurface">@color/colorWhite_Primary</item>
<!-- Indicator or focused field color -->
<item name="colorPrimary">@color/colorPrimary_Accent</item>
<!-- Day color (active) -->
<item name="colorOnPrimary">@color/colorWhite_PrimaryDark</item>
<!-- Day color (inactive) -->
<item name="colorOnSurface">@color/colorPrimaryDark_White</item>
<item name="colorOnSurfaceVariant">@color/colorPrimary_Accent</item>
<item name="buttonBarPositiveButtonStyle">@style/DialogButtonStyle</item>
<item name="buttonBarNegativeButtonStyle">@style/DialogButtonStyle</item>
<item name="shapeAppearanceCornerExtraLarge">@style/ShapeAppearance.App.LargeComponent</item>
</style>
<!-- AlertDialog theme on both light and night mode -->
<style name="AppDialog" parent="ThemeOverlay.Material3.MaterialAlertDialog" tools:keep="@style/AppDialog">
<!-- Background color -->
<item name="colorSurface">@color/colorWhite_Primary</item>
<!-- Message color -->
<item name="colorOnSurfaceVariant">@color/colorPrimaryDark_White</item>
<item name="buttonBarPositiveButtonStyle">@style/DialogButtonStyle</item>
<item name="buttonBarNegativeButtonStyle">@style/DialogButtonStyle</item>
<item name="alertDialogStyle">@style/MaterialAlertDialog.App</item>
</style>
使用方法
<!-- Base application theme -->
<style name="Theme.Sample" parent="Theme.Material3.DayNight">
<item name="materialCalendarTheme">@style/AppCalendar</item>
<item name="materialAlertDialogTheme">@style/AppDialog</item>
</style>
为了确认我们是否指向正确的属性,将
colorSurface
值更改为 @android:color/holo_orange_dark
将导致此结果。
这里有什么问题以及如何解决它?