android夜间模式Support Library,最新美团点评Android团队面试题

在这里插入图片描述

drawable文件夹放日间模式图片,drawable-night文件夹放夜间模式图片。

value的color文件夹设置日间模式颜色,value-night的color文件夹设置夜间模式颜色

然后在项目所有的xml配置中涉及有图片和颜色的地方,都在对应地方设置日夜间模式两种。

日夜间模式切换


日夜间状态有两种切换方法

AppCompatDelegate.setDefaultNightMode(mode) 可以设置全局的夜间模式

AppCompatDelegate.setLocalNightMode(mode)可以设置局部的夜间模式

mode值有四种

MODE_NIGHT_NO: 亮色(light)主题,不使用夜间模式

MODE_NIGHT_YES:暗色(dark)主题,使用夜间模式

MODE_NIGHT_AUTO:根据当前时间自动切换 亮色(light)/暗色(dark)主题(22:00-07:00时间段内自动切换为夜间模式)

MODE_NIGHT_FOLLOW_SYSTEM(默认选项):设置为跟随系统,通常为MODE_NIGHT_NO

设置完后,一般都需要调用recreate()才能生效。

我们一般会选择保存下日夜间模式的状态

在Application中进行初始化。

根据app上次退出的状态来判断是否需要设置夜间模式,提前在SharedPreference中存了一个是否是夜间模式的boolean值

if (SettingDB

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值