1.概述
在10.0的系统产品定制化开发中,在对于系统原生SystemUI的状态栏背景在沉浸式状态栏的
情况下默认是会随着背景颜色的变化而改变的,在一些特定背景下状态栏的背景也是会改变的,所以由于产品开发需要
要求需要设置状态栏背景为透明的,所以就需要在Activity创建的时候设置状态栏的背景色来完成功能的开发
如图:
2.framework关于systemUI状态栏透明背景的功能实现的核心类
frameworks\base\core\java\android\app\ActivityThread.java
frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java
3.framework关于systemUI状态栏透明背景的功能实现的核心功能分析和实现
在系统SystemUI状态栏中,StatusBar也是继承SystemUI,启动流程和SystemUI一致。并在start的时候添加创建StatusBar相关的view。
我们从StatusBar的start()方法开始看,从这里来分析下Statusbar的加载流程和工作原理
3.1 关于StatusBar的相关布局构建分析相关源码
@Override
public void start() {// 省略部分代码......// 创建整个SystemUI视图并添加到WindowManager中createAndAddWindows();//这个重点方法,创建相关的视图