首页 > 解决方案 > 每当我在手机上切换到暗模式时,Android 应用程序的颜色都会发生变化

问题描述

我正在使用安卓工作室 4.1。我的实体手机上的android版本是10。当我在手机上安装应用程序时,我在手机上看到的颜色和项目中存在的颜色非常不同。我发现每当我关闭手机上的暗模式时,颜色就会与项目中的颜色相同。每当我在手机上切换到暗模式时,颜色都会改变。我只想要在手机上以浅色模式显示的颜色,在这两种情况下,如果深色模式已关闭或未关闭。还有一件事,我没有在 res/values 中找到 styles.xml,并且项目/应用程序中也有类似 res(generated) 之类的东西,这些是我在任何项目中都找不到的东西......

价值观/主题的屏幕截图。

应用程序在灯光模式下的屏幕截图。

暗模式下的应用截图。

项目的屏幕截图(其中有些东西我在任何项目中都找不到,styles.xml 也不存在)。

AndroidManifest.xml截图..

如果您想了解更多信息来解决此问题,请发表评论。

请帮忙

标签: android

解决方案


您已用作Theme.MaterialComponents.DayNight.DarkActionBar应用主题父级,将其更改为Theme.MaterialComponents.Light.DarkActionBar会将您的应用更改为轻主题:

<style name="Theme.Calculator" parent="Theme.MaterialComponents.Light.DarkActionBar">
...

在您AndroidManifest.xml的 Android Studio 工作区的 manifests 文件夹中,请确保您引用了Theme.Calculator主题。

<application ... android:theme="@style/Theme.Calculator" ...>

您应该考虑离开基于“DayNight”的主题并将 a 添加colors.xml到您的res/values-night文件夹中。这将允许您为深色主题定义替代颜色,然后您的应用在深色和浅色主题中看起来都很棒。

在https://developer.android.com/guide/topics/ui/look-and-feel/themes了解有关样式和主题的更多信息。


推荐阅读