Android 的“Theme.MaterialComponents.DayNight.DarkActionBar”和“Theme.MaterialComponents.DayNight.DarkActionBar.Bridge”有什么区别

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

我正在研究我的新 Android 应用程序的材质设计,但我无法弄清楚“Theme.MaterialComponents.DayNight.DarkActionBar”和“Theme.MaterialComponents.DayNight.DarkActionBar.Bridge”之间有什么区别

当我使用.Bridge时,背景颜色与我在“背景”中定义的项目值相对应。为什么当我这样做时颜色会改变?

这是我的代码供参考:

<style name="Theme.GrainGuardians" parent="Theme.MaterialComponents.DayNight.DarkActionBar.Bridge">
        <!-- Primary brand color. -->
        <item name="colorPrimary">@color/green_asparagus_night</item>
        <item name="colorPrimaryVariant">@color/green_palm_night</item>
        <item name="colorOnPrimary">@color/white</item>
        <!-- Secondary brand color. -->
        <item name="colorSecondary">@color/gold_american_night</item>
        <item name="colorSecondaryVariant">@color/gold_sunray_night</item>
        <item name="colorOnSecondary">@color/black</item>
        <!-- Status bar color. -->
        <item name="android:statusBarColor">?attr/colorPrimaryVariant</item>
        <!-- Customize your theme here. -->
        <item name="background">@color/background_night</item>
</style>

我尝试过使用两者,但我只看到一些颜色发生了变化。我在网上找不到任何文档。任何帮助都会很棒。

android xml styles
1个回答
0
投票

尝试使用:

<item name="android:background">@color/background_night</item>

您不需要为新应用程序使用桥接主题,它们的目的是使从 AppCompat 主题的迁移变得更容易。

您还应该考虑使用材质 3,它迟早会成为默认值。您可以使用主题生成器,它将生成您开始使用所需的所有内容。

© www.soinside.com 2019 - 2024. All rights reserved.