android 绘制5格电量,Android 如何把状态栏信号格改为5格
前言 欢迎大家我分享和推荐好用的代码段~~声明 欢迎转载,但请保留文章原始出处:
CSDN:http://www.csdn.net
雨季o莫忧离:http://blog.csdn.net/luckkof
正文
目前android信号格默认是4格,如何客制化为5格呢?
由于SystemUI仅仅是根据telephony那边传递过来的信号强度值去决定icon并加以显示,因此要实现这一功能主要要分2步完成。
1、修改telephony模块信号处理部分,这部分可以参考:客制化修改代码说明与示例
2、修改Systemui信号显示部分。
SystemUI的资源调用一共有2种方式,运营商定制以及系统默认。二者的差别是图片资源位置不同,获取资源的接口不同。
但都是根据信号强度iconLevel去获取图片资源。
具体可能修改到地方有:
(1)、NetworkControllerGemini.java(alps\frameworks\base\packages\SystemUI\src\com\android\systemui\statusbar\policy)
private final void updateTelephonySignalStrength(int slotId)
……
在这个函数里面,大致有tempLastSignalLevel[0] 、iconLevel[0]、tempPhoneSignalIconId[0]这几变量会用到,需要相应的处理 如系统默认的资源调用接口为:
} else {
iconList[0] = TelephonyIconsGemini.getTelephonySignalStrengthIconList(simColorId, false);
tempPhoneSignalIconId[0].setResources(null);
if (iconLevel[0] < 5) {
tempPhoneSignalIconId[0].setIconId(iconList[0][iconLevel[0]]);
} }
(2) 、根据sim卡属性获取图片资源
TelephonyIconsGemini.java alps\frameworks\base\packages\SystemUI\src\com\android\systemui\statusbar\policy
public static int[] getTelephonySignalStrengthIconList(int simColorId, boolean showSimIndicator) {
if (showSimIndicator) {
return TELEPHONY_SIGNAL_STRENGTH_WHITE;
} else {
return TELEPHONY_SIGNAL_STRENGTH[simColorId];
}
}
具体图片资源定义,需要新增图片资源
private static final int[] TELEPHONY_SIGNAL_STRENGTH_WHITE = {
R.drawable.stat_sys_gemini_signal_0,
R.drawable.stat_sys_gemini_signal_1_white,
R.drawable.stat_sys_gemini_signal_2_white,
R.drawable.stat_sys_gemini_signal_3_white,
R.drawable.stat_sys_gemini_signal_4_white };
/** Signal level icons for normal. @{ */
原文:http://blog.csdn.net/fanmengke_im/article/details/20698441
android 绘制5格电量,Android 如何把状态栏信号格改为5格相关推荐
- android 绘制5格电量,Android 怎么把状态栏信号格改为5格
Android 如何把状态栏信号格改为5格 前言 欢迎大家我分享和推荐好用的代码段~~声明 欢迎转载,但请保留文章原始出处: CSDN:http://www.csdn. ...
- android 绘制正方形图片,是Android的自定义View-绘制流程-正方形图片控件(SquareImageView)...
前言 了解View的绘制三大流程后,接下来就要对这些知识做一个实践,首先来实现一个在Android中最为常见的控件--方形图片控件,即让图片在一个方形区域内显示,最常见的场景是在九宫格图片当中. 一般 ...
- android绘制过程3d图形,Android开发之OpenGL绘制三维图形的流程
从这篇文章开始,接下来会连载一系列的OpenGL相关博文,好好探讨如何在Android中进行OpenGL开发. OpenGL的全称是"Open Graphics Library", ...
- flutter对比Android绘制流程,Flutter与android的对比---View
本文是在GitHub上一个flutter项目的资料中看到的,由于原文过于太长,因此对其进行了章节拆分方便阅读,此篇为原文的部分内容,如果想查看该项目请跳转GitHub查看.
- Android 8.0 状态栏信号显示、信号定制
之前发了下拉通知栏开关修改的一篇文章. 这篇文章呢,主要介绍一下Android状态栏信号图标显示的流程. 便于在Android源生上开发的碰到问题的朋友,希望能对读者有所帮助.内容可能比较长 首先还是 ...
- Android 绘制电池电量图标(含充电状态)。
Android 绘制电池电量图标在视频播放等全屏情况下有用到. 先在布局文件中写一个ImageView <?xml version="1.0" encoding=" ...
- android绘制心电图
android绘制心电图 最近在做一个医疗的app项目,需要通过蓝牙获取心电仪的数据然后绘制心电图,此demo可以直接用! https://download.csdn.net/download/ora ...
- Android绘制函数图象及正弦函数的介绍
零.前言 这篇是为了下一篇做点铺垫,也是来复习一些数学基础 本篇属于休闲娱乐,不要太较真,小科普一下,不喜勿喷 本文知识点前4点你可以随便看看,但第5点非常重要,本文源码见捷文规范 本文知识点: 1) ...
- Android绘制流程
一.前言 1.1.C++界面库 MFC.WTL.DuiLib.QT.Skia.OpenGL. Android里面的画图分为2D和3D两种: 2D是由Skia 来实现的,3D部分是由OpenGL实现的. ...
最新文章
- 4场直播,哈工大、亚马逊等大咖为你带来机器学习与知识图谱的内容盛宴
- 简要介绍一下贝叶斯定理( Bayes‘ theorem)
- 检查Lync SRV记录是否正常
- php怎么爬取亚马逊的数据,使用PHP从Amazon MWS API获取订单数据
- appium 中部分 api 的使用方法
- 支持异构图、集成GraphGym,超好用的图神经网络库PyG更新2.0版本
- python三酷猫_洛克王国三代酷猫登场 冰水酷猫解析
- linux 字符下 上网,Linux下实现字符串截取方法总结(示例代码)
- 「mac操作指南」WidsMob HEIC将HEIC/HEIF 转换为 JPEG/PNG/TIFF格式
- vue-happy-scroll:vue中借助vue happy scroll实现局部文字滚动
- 贝叶斯网络结构学习之MCMC算法(基于FullBNT-1.0.4的MATLAB实现)
- 计算机二级公共基础知识笔记
- mac系统如何连接服务器地址,mac如何远程连接服务器地址
- 灰度思维,黑白决策(上)
- 第三代计算机的内存是,Intel正式发布Cooper Lake、第三代傲腾内存和新数据中心SSD...
- 朴素贝叶斯分类算法(Naive Bayes)
- 算法题打卡-超人进化(剑指offer第一天)
- 解决用友固定资产出现的“不能月末结账,可能月末未结账”的处理办法
- linux ftp匿名用户,linux vsftp 匿名用户的设置
- 好文:中国Saas蜕变史
热门文章
- linux下文件以及目录权限修改(摘抄)
- 腾讯课堂的物理实验(2017计蒜客初赛第三场)
- win7提示Xshell5提示缺少msvcp110.dll解决办法
- SQL查询语句执行速度快,存储过程执行慢
- jQuery的三种bind/One/Live事件绑定使用方法
- Apache负载均衡设置方法: mod_proxy
- 如何将.FRM,.MYD,MYI文件转换为.SQL导入数据库中
- [java] javax.el.PropertyNotFoundException: Property 'id' not found on type bean.Student
- 【数据结构与算法】之深入解析“整数转罗马数字”的求解思路与算法示例
- 2019/Province_C_C++_A/F/完全二叉树的权值