当前位置: 首页 > 知识库问答 >
问题:

Android亮/暗主题动作栏文本

阴高寒
2023-03-14

我正在我的playground Android应用程序中实现一个黑暗主题,正在努力让动作栏文本颜色变成白色。

<style name="DarkThemeApp" parent="@style/Theme.MaterialComponents.DayNight.NoActionBar">
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
    <item name="colorError">@color/colorError</item>
    <item name="android:textColor">?android:attr/textColorPrimary</item>
</style>
<resources>
    <color name="colorPrimary">#3d85c6</color>
    <color name="colorPrimaryDark">#002e72</color>
    <color name="colorAccent">#e66f00</color>
    <color name="colorYellow">#FFE800</color>
    <color name="colorError">#E53935</color>
</resources>
<resources>
    <color name="colorPrimary">#00348e</color>
    <color name="colorPrimaryDark">#002e72</color>
    <color name="colorAccent">#e66f00</color>
    <color name="colorYellow">#FFE800</color>
    <color name="colorError">#E53935</color>
</resources>

共有1个答案

魏波娃
2023-03-14

使用材质主题,您可以使用不同的选项自定义工具栏中使用的文本颜色

  • 使用Android:Theme仅覆盖工具栏
  • 的默认值
<com.google.android.material.appbar.MaterialToolbar
    android:theme="@style/MyThemeOverlay_Toolbar"
    ...>

并使用:

  <style name="MyThemeOverlay_Toolbar" parent="ThemeOverlay.MaterialComponents.Toolbar.Primary">
    <!-- color used by the toolbar title -->
    <item name="android:textColorPrimary">@color/secondaryColor</item>
    <!-- color used by navigation icon and overflow icon -->
    <item name="colorOnPrimary">@color/secondaryColor</item>
  </style>
  • 工具栏中设置样式
<com.google.android.material.appbar.MaterialToolbar
    style="@style/MyToolbar"
    .../>

然后使用MaterialThemeOverlay覆盖默认值(它需要材料组件库版本1.1.0):

  <!-- Toolbar -->
  <style name="MyToolbar" parent="Widget.MaterialComponents.Toolbar">
    <item name="materialThemeOverlay">@style/MyThemeOverlay_Toolbar</item>
  </style>

  <style name="MyThemeOverlay_Toolbar" parent="">
    <item name="android:textColorPrimary">@color/secondaryColor</item>
    <item name="colorOnPrimary">@color/secondaryColor</item>
  </style>
 类似资料:
  • 如何更改MySQL Workbench设置,使其使用深色主题?

  • 我会尽量详细解释“请帮忙。我打开了一个新项目。在新项目中,“主题”部分打开了两次“一亮一暗”。我在应用程序中添加了黑色文字。文字看起来是白色的,因为我的手机是黑色主题。这很好,但令人费解。我只有一种颜色。xml文件(不适用于夜间版本)文本是如何变为白色的?这很好,但我添加的图标(矢量“xml”)并将其设置为灰色,但现在它无法理解。图标的颜色在黑暗中从灰色变为黑色。我想让他换成白人。我还打开了颜色。

  • eclipse for windows是否有一个暗色主题,它将滚动条和菜单栏的颜色也改为暗色? 在这篇文章中,我们可以看到漂亮的主题,但这些都是针对Mac OS的。对于Windows来说,黑色的主题看起来很难看,因为那些白色的滚动条和标题栏等等。真的!

  • 从Android10开始,你可以在黑暗模式和默认灯光模式之间切换。我还没有做任何更深入的研究,因为这是一个新的话题。暗模式的颜色切换是由操作系统自动的,还是有任何方法告诉我的应用程序切换不同的应用程序主题,如果暗模式是打开的?此外,黑暗模式也可能出现在一些Android 9设备上。 因为我使用自定义参数创建了自定义深色主题,并在资源中为每种颜色设置了深色(在中使用自定义属性,并在的主题中为它们应用

  • 我在Windows8.1上为C/C++开发人员提供了Eclipse IDE。我从市场上安装了Darkest Dark主题,但它不起作用。在重新启动时,Eclipse以我以前的主题开始,而Darkest Dark甚至不会出现在Preferences窗口中。然而,当我再次打开Marketplace并搜索它时,它显示为已安装。我找了找,但没有找到这个确切问题的答案。有人帮忙吗?

  • 我正在接受android培训,设计动作栏。 由于android:theme=@style/MyActionBar,我面临错误。 我想知道如何设置动作栏的样式。 IllegalStateException:您需要使用主题。AppCompat主题与此活动 我认为错误来自: 所以我将其修改为 我有以下错误: 错误:检索项的父项时出错:未找到与给定名称“@android:style/Theme”匹配的资源