Android-DayNight-Mode 夜间模式的坑

AppCompat v23.2引入的夜间模式在实际应用中遇到颜色切换偶尔失败的问题,特别是xml drawable中的color背景。当xml背景色不是图片时,问题更易发生。解决之道是为受影响的xml资源创建night版本的副本,尽管这会导致资源冗余。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

AppCompat v23.2 加了夜间模式,在使用过程中有遇到有部分颜色切换偶尔失败的情况,发现只要用的是xml类型的drawable,xml里面的背景色用的是color而非图片就有一定的几率出现颜色切换失败的情况。
如:一个带圆角的按钮背景

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <solid android:color="@color/colorA" />
    <stroke
        android:width="0.5dp"
        android:color="@color/colorB" />
    <corners android:radius="2dp" />
</shape>

解决方法很简单,复制一份到drawable-night文件夹下就OK了,只是文件重复了一份。。。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值