You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改Android应用在深色模式下的页面显示颜色?

问题:Android应用深色模式显示异常如何修改配色

各位开发者大家好。
我使用Android Studio开发了一款Android应用,但最初仅适配了浅色(light)模式的布局主题,浅色模式下的页面效果如下:
浅色模式
现在当我将手机切换到
深色(dark)模式时,页面显示出现异常,效果如下:
深色模式
请问我该如何修改应用在
深色模式
下的显示颜色?


解答

你可以根据需求选择以下任意一种方案解决问题:

方案一:强制关闭应用深色模式(快速修复异常,无需适配)

如果你的应用不需要支持深色模式,直接禁止系统强制给应用套深色滤镜即可:

  • 打开res/values/themes.xml(旧版Android项目对应styles.xml),在你的应用主主题节点下添加一行配置:
    <item name="android:forceDarkAllowed">false</item>
    
    配置完成后应用会固定保持浅色模式显示,不会因为系统切换深色模式出现样式异常。

方案二:适配系统深色模式

如果需要应用跟随系统自动切换深浅色主题,按以下步骤操作:

  1. 调整应用基础主题
    打开主题配置文件,将应用主主题的父主题修改为DayNight系列,示例:
    <style name="AppTheme" parent="Theme.MaterialComponents.DayNight.NoActionBar">
        <!-- 原有其他主题配置保持不变 -->
    </style>
    
  2. 创建深色模式专属颜色配置
    • 在res目录下新建名为values-night的资源文件夹
    • 将res/values/colors.xml复制到values-night目录中
    • 修改values-night/colors.xml里的颜色值适配深色场景:比如将主背景色改为深灰#121212,一级文字颜色改为浅灰#F5F5F5,二级文字颜色改为#A0A0A0,和浅色模式的颜色资源一一对应即可
  3. 检查布局代码,确保所有颜色都引用@color/xxx资源,不要写硬编码的十六进制色值,这样系统切换深浅模式时会自动加载对应资源文件夹下的颜色配置。

内容的提问来源于stack exchange,提问作者Alcachofra

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 06:06:03