【问题标题】:Theme.MaterialComponents colorPrimary not workingTheme.MaterialComponents colorPrimary 不起作用
【发布时间】:2020-02-27 03:50:50
【问题描述】:

我正在使用Theme.MaterialComponent,但它不会影响我的actionBar,为什么?

style.xml

 <!-- Base application theme. -->
    <style name="AppTheme" parent="Theme.MaterialComponents">
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
        <item name="android:windowBackground">@color/windowBackground</item>
        <item name="android:textColor">@color/white</item>
    </style>

colors.xml

<resources>
    <color name="colorPrimary">#801336</color>
    <color name="colorPrimaryDark">#510a32</color>
    <color name="colorAccent">#ee4540</color>
    <color name="windowBackground">#2d142c</color>

    <color name="white">#FFF</color>
</resources>

【问题讨论】:

  • 请也分享 Manifest.xml
  • @0X0nosugar 在那里,android:theme="AppTheme" 在清单中,并且在活动中没有主题
  • 什么不起作用?光明还是黑暗?我看到的问题是光 colorPrimary 有效,但黑暗无效。

标签: android material-design


【解决方案1】:

使用 Theme.MaterialComponents 作为您的应用主题的父级不会像您注意到的那样对 ActionBar 产生影响。您需要使用从基本主题继承的主题之一。

  • Theme.MaterialComponents.NoActionBar 如果您想将自己的 Toolbar 用作 ActionBar 并使用深色主题(深色背景颜色上的白色文本)
  • Theme.MaterialComponents.Light 用于浅色主题(浅色背景上的黑色文本),ActionBar 由运行时生成
  • Theme.MaterialComponents.Light.NoActionBar 用于带有您自己的轻主题 Toolbar,没有自动生成的 ActionBar
  • Theme.MaterialComponents.Light.DarkActionBar 用于整体浅色主题,除了深色 ActionBar
  • Theme.MaterialComponents.DayNight 用于 DayNight 主题
  • Theme.MaterialComponents.DayNight.NoActionBar 用于没有自动生成的 DayNight 主题 ActionBar
  • Theme.MaterialComponents.DayNight.DarkActionBar 用于带有深色 ActionBar 的 DayNight 主题

注意:无论您选择什么主题,您都可以使用任何颜色。但是,如果您选择例如Theme.MaterialComponents.Light.DarkActionBar 并设置

 <item name="colorPrimary">@color/white</item>

那么你的ActionBar 将是白色的 - 因为你说你有一个黑暗的ActionBar - 文本也将是白色的。因此,您需要确保有足够的对比度。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-12-12
    • 2020-09-15
    • 1970-01-01
    • 1970-01-01
    • 2023-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多