请教 ANDROID 通信信号、网络信号图标的颜色问题
在2.3源码中查看状态栏图标的时候遇到个问题,麻烦高手帮忙解决一下:
关于通信信号、网络信号的图标,ANDROID源代码中有两套,一套是灰的,一套是绿的,如下图所示。
下载附件 (59.85 KB)
绿的图标名字中比灰的多了个"_fully"。
如灰的图标名为 stat_sys_signal_0.png
那么绿的图标名为 stat_sys_signal_0_fully.png
我的问题是:这两套图标分别是在什么时候用的呢?
================================================================
我跟了一下代码 见StatusbarPolicy.java
一、两套图片资源在这个二维数组被引用。
private static final int[][] sSignalImages = {
{ R.drawable.stat_sys_signal_0,
R.drawable.stat_sys_signal_1,
R.drawable.stat_sys_signal_2,
R.drawable.stat_sys_signal_3,
R.drawable.stat_sys_signal_4 },
{ R.drawable.stat_sys_signal_0_fully,
R.drawable.stat_sys_signal_1_fully,
R.drawable.stat_sys_signal_2_fully,
R.drawable.stat_sys_signal_3_fully,
R.drawable.stat_sys_signal_4_fully }
};
二、系统定义了一个一维数组来获取当前要用的图片资源。
int[] iconList;
iconList = sSignalImages[mInetCondition];
三、那么关键就是这个mInetCondition了,它要么是0 要么是1。在别一个地方又看到,它是等于inetCondition
mInetCondition = inetCondition;
四、找到这个inetCondition 它的值又是如下方式取得的。
int connectionStatus = intent.getIntExtra(ConnectivityManager.EXTRA_INET_CONDITION, 0);
int inetCondition = (connectionStatus > INET_CONDITION_THRESHOLD ? 1 : 0);
INET_CONDITION_THRESHOLD 的值为 50
ConnectivityManager.EXTRA_INET_CONDITION 的定义如下:
/**
* The lookup key for an int that provides information about
* our connection to the internet at large. 0 indicates no connection,
* 100 indicates a great connection. Retrieve it with
* {@link android.content.Intent@getIntExtra(String)}.
* {@hide}
*/
public static final String EXTRA_INET_CONDITION = "inetCondition";
这是不是说连接到因特网的连接分为0~100 101个level。
0~50 时,这些信号相关的图标就显示灰色的。
51~100时,就显示绿的呢?
请教 ANDROID 通信信号、网络信号图标的颜色问题相关推荐
- Android动态设置纯色图标的颜色
以前做了一个流量悬浮窗,悬浮窗里有当前网络状态的图标和网速的文字,想实现改变文字颜色的同时改变状态图标的颜色 实现后分享出来让大家参考下 先上图 以下是关键代码 <ImageView andro ...
- Android 6.0 状态栏信号图标分析
先来一张状态栏的分区图.今天要分析的是信号显示这一小块,就是图中的signal_cluster,对应源码中的View就是SignalClusterView. 这是一个自定义View,我们看一下他的定义 ...
- android 状态栏wifi,【技术贴】教你修改状态栏里的wifi、信号、电量图标(转自论坛)...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 原帖地址:http://www.miui.com/forum.php?mod=viewthread&tid=1745173 素材地址:http:/ ...
- Android 10 SystemUI 如何添加4G信号和WiFi图标
代码路径: frameworks/base/packages/SystemUI/res/layout/system_icons.xml frameworks/base/packages/SystemU ...
- android 网络信号,Android获取移动网络信号强度的方法
判断有没有 SIM 卡 获取移动网络的信号,一定要判断是否插了 SIM 卡,没插卡肯定是没法获取的 /** * 判断是否包含SIM卡 * * @return 状态 */ public static b ...
- Android SystemUI 状态栏网络图标显示分析(Android 11)
最近看了一个wifi, ethernet切换,状态栏图表显示的问题.记录一下追踪由于网络状态变化,SystemUI 状态栏网络图标显示的流程. 先看一下SystemUI这边: /frameworks/ ...
- Mac OS使用技巧之三:发射无线网络信号的方法
许多人知道在windows下可以直接借助各种辅助软件来直接发射wifi信号,比如360wifi,猎豹wifi.或者可以直接在命令行里面设置.许多人却不知道Mac系统也有方便快捷发射无线信号的功能. ...
- 域格模块移动网络信号指标介绍
域格模块移动网络信号指标介绍 如今,移动通信已成为我们生活不可或缺的一部分,我们享受着他带给我们的便利,也不时遭遇到因网络通信质量差造成的窘境.而带给我们这冰火两重天的,就是我们今天的主角&qu ...
- 蓝牙、wifi、zigbee和lora、NB-lot,通话信号,网络信号4G
目录 LoRa与NB-IOT资费对比 什么是LoRa LoRa的特性 什么是nb-iot 蓝牙.wifi.3G/4G.lora技术的对比 频段 2.4ghz频 蓝牙.wifi.zigbee和lora. ...
最新文章
- 82年 AI程序员征婚启示火了!年薪百万,女生神回复
- objc’s category and class cluster 详解
- Gibbs sampling
- java 读取word书签_Java 添加、读取、删除Word书签
- AWS发布低延迟互动直播服务
- 解决Ubuntu下pycharm无法输入中文的问题
- 你的DNA都会玩摇滚了,你却还是个音痴
- Linux系统编程17:进程控制之进程等待为什么进程需要被等待wait方法和waitpid方法阻塞和非阻塞等待
- QQ空间小秘书 V1.70 Beta1 ~~ 天空原创软件
- python selenium解决报错SessionNotCreatedException session not created: No matching capabilitie与问题解析
- dpm码识别_如何读取直接零件打标码(DPM)
- 区块链技术人才严重不足,平均薪资 2.58 万
- Python判断字符串是否为数字(数字、小数、负数、负小数、0)
- 以汉维语音翻译为例-uniapp原生顶部栏维语翻译-使用字体图标
- win7 做无盘服务器配置,两种方法轻松实现无盘安装Win7系统
- NB-IOT(BC95模组)对接华为中国电信物联网平台上行数据与下行数据总流程
- 大话MIMO-OFDM联合工作实现过程
- 电机矢量控制(霍尔位置传感器)
- 2003服务器系统密匙,windows server 2003 安装密钥
- java 对象存储在哪里_Java对象存储位置
热门文章
- 2020幂次生长,GMIC开启下一个10年科技新浪潮
- 样本标准差个除以n-1与总体标准差除以n 数学意义是什么?
- 电脑桌面计算机打开很慢,电脑桌面刷新反应很慢怎么办?电脑桌面刷新很慢解决方法...
- js-获取JSON数组的长度
- mysql上机实验报告_数据库上机实验7实验报告.doc
- 如何从基层人员变成一名中层领导
- 逻辑 - 联言命题,选言命题
- 《测绘管理与法律法规》——测绘资质资格管理
- 有感于董洁为子找幼儿园因不是外籍被拒 怪自己“不争气”
- 看机器学习精准预测:谁是iphone的忠实玩家?