MDC:Material3 MaterialCalendar 背景颜色

问题描述 投票:0回答:1

如何更改材质日历背景?我正在设置白天和夜间主题,除了夜间模式外,它正在工作,其中设置的颜色背景未正确应用。

这是夜间预期的背景颜色

这是夜晚的实际背景颜色

尽管

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
将导致此结果。

这里有什么问题以及如何解决它?

android material-design material-components-android mdc-components material3
1个回答
0
投票

你可以使用它

<item name="colorSurfaceContainerHigh">YourColor</item>

作为来源检查时,这个color

的源代码
© www.soinside.com 2019 - 2024. All rights reserved.