android夜间模式监控
android 自带的夜间模式是真的丑
所以想通过监控模式来自定义模式
其实很简单
首先在 AndroidManifest.xml 添加监控
android:configChanges="orientation|screenSize|uiMode"
完整代码
<activityandroid:name="com.zzf.bluetoothsmp.Liao_tian"android:exported="false" /><activityandroid:name="com.zzf.bluetoothsmp.MainActivity"android:exported="true"android:configChanges="orientation|screenSize|uiMode"android:launchMode="singleTask"><intent-filter><action android:name="android.intent.action.MAIN" /><category android:name="android.intent.category.LAUNCHER" /></intent-filter></activity>
然后在 MainActivity 重写onConfigurationChanged( ) 方法
public void onConfigurationChanged(@NonNull Configuration newConfig) {super.onConfigurationChanged(newConfig);int currentNightMode = newConfig.uiMode & Configuration.UI_MODE_NIGHT_MASK;Log.d(TAG, "当前什么模式: 这是日间模式22222222222222222222222");switch (currentNightMode) {case Configuration.UI_MODE_NIGHT_NO:Log.d(TAG, "当前什么模式: 这是日间模式");break;case Configuration.UI_MODE_NIGHT_YES:Log.d(TAG, "当前什么模式: 夜间模式");break;}}
重写onConfigurationChanged注意下
在Activity中添加了android:configChanges属性,目的是当android:configChanges所设置的属性值对应的配置属性发生改变时,通知程序调用 onConfigurationChanged()函数,而不会重启Activity。
这里简单说下configChanges
“mcc” :国际移动用户识别码所属国家代号改变了----- sim被侦测到了,去更新mcc,mcc是移动用户所属国家代号
“mnc”: 国际移动用户识别码的移动网号码改变了------ sim被侦测到了,去更新mnc,MNC是移动网号码,最多由两位数字组成,用于识别移动用户所归属的移动通信网
“locale”: 地址改变了-----用户选择了一个新的语言会显示出来
“touchscreen”: 触摸屏是改变了------通常是不会发生的
“keyboard” :键盘发生了改变----例如用户用了外部的键盘
“keyboardHidden”: 键盘的可用性发生了改变
“navigation”: 导航发生了变化-----通常也不会发生
“screenLayout”: 屏幕的显示发生了变化------不同的显示被激活
“fontScale”: 字体比例发生了变化----选择了不同的全局字体
“uiMode”: 用户的模式发生了变化
“orientation”: 屏幕方向改变了
“screenSize”: 屏幕大小改变了
“smallestScreenSize”: 屏幕的物理大小改变了,如:连接到一个外部的屏幕上
android夜间模式监控相关推荐
- Android夜间模式实践
前言 由于项目需要,近段时间开发的夜间模式功能.主流的方案如下: 1.通过切换theme实现 2.通过resource id映射实现 3.通过Android Support Library的实现 方案 ...
- android自动夜间模式吗,Android夜间模式的实现方案
原标题:Android夜间模式的实现方案 作者简介 本篇来自 Sunlight1024的投稿,详细地讲解了关于Android应用的夜间模式的实现,希望大家喜欢! Sunlight1024的博客地址: ...
- android自动夜间模式,夜晚的故事(android夜间模式实现)
夜幕降临,他走在马路上,回想着今天发生的一切,他不敢相信事情就这样发生了.他最终还是决定拨打那个电话,掏出手机,解锁屏幕,突然一道强光从屏幕里毫无预兆的发射出来.他一个踉跄倒在了马路中央.而他身后伴随 ...
- Android夜间模式最佳实践
转自:Android夜间模式最佳实践 由于Android的设置中并没有夜间模式的选项,对于喜欢睡前玩手机的用户,只能简单的调节手机屏幕亮度来改善体验.目前越来越多的应用开始把夜间模式加到自家应用中,没 ...
- android 夜间模式 框架,Android 夜间模式的三种实现
实现夜间模式有很多种方式,经过多次尝试,算是找到了一种性价比较高的方式. 主题方式 这是最正统的方式,但工作量巨大,因为要全局替换 xml 布局中所有硬编码的色值,将其换成主题色.然后通过换主题达到换 ...
- android os夜间,Android夜间模式实现
查看我的全部开源项目[开源实验室] 欢迎加入我的QQ群:[201055521],本博客客户端下载[请点击] 本文原创,转载请注明地址:http://blog.kymjs.com/ 最近在做一个Andr ...
- android 夜间模式设置
夜晚的故事(android夜间模式实现) 字数2003 阅读1393 评论11 喜欢18 夜幕降临,他走在马路上,回想着今天发生的一切,他不敢相信事情就这样发生了.他最终还是决定拨打那个电话,掏 ...
- Android夜间模式的几种实现
一.直接修改widget颜色,这种方式实现起来最简单,但需要每个控件都去修改,太过复杂.例如: /*** 相应交互,修改控件颜色* @param view*/public void onMethod1 ...
- android官方夜间模式,Android夜间模式实践
前言 由于项目需要,近段时间开发的夜间模式功能.主流的方案如下: 1.通过切换theme实现 2.通过resource id映射实现 3.通过Android Support Library的实现 方案 ...
最新文章
- Java程序员常用工具集
- 【ABAP】更新交货单交货数量和拣配数量
- Visual Studio“Orcas”October 2006 CTP版下载
- mysql主从配置访问_Mysql主从配置,实现读写分离
- UIScrollView的几个要点总结
- 每日算法系列【LeetCode 354】俄罗斯套娃信封问题
- 运筹学_单纯形法_week3
- 谷歌octotree插件的使用
- Java锁synchronized关键字学习系列之CAS和对象头
- 农业物联网系统功能特点
- 三 国外IP核主要竞争对手
- STC系列51单片机延时程序汇总
- 纯鼓点节奏_[鼓点] 简单的鼓点节奏
- 带你彻底搞懂Android启动速度优化!吐血整理
- JAVA 面试(更新)
- 世界顶级食材——挑动你的食欲
- cocos creator 3.x 精灵不显示、加载动态图片、物理碰撞、人物跟随鼠标移动、碰撞后节点销毁
- 亿速云服务器 如何上传文件,使用MultipartFile怎么实现一个文件上传功能
- 【踩坑专栏】Field xxFeignClient in xxx required a bean of type ‘xxx.XXFeignClient‘ that could not be found
- 右键excel 文件后文件夹卡死,或打开Excel后文件所在的文件夹卡死