android 11 SystemUI 状态栏打开之后的界面层级关系说明之一

在这里插入图片描述

比如WiFi 图标的父layout为:

Class Name: ButtonRelativeLayout
Class Name: QSTileView
Class Name: TilePage
Class Name: PagedTileLayout
Class Name: QSPanel
Class Name: NonInterceptingScrollView
Class Name: QSContainerImpl
Class Name: FrameLayout
Class Name: NotificationsQuickSettingsContainer
Class Name: NotificationPanelView
Class Name: NotificationShadeWindowView
定义在文件:

QSTileView 是如何创建的?

QSPanel.addTile 被调用的流程:

在这里插入图片描述
在 QSFragment 的 onViewCreated 方法被调用 。

系统何时创建QSTileHost

在 QSTileHost 的 getDefaultSpecs 方法中加载系统默认的 tiles.

点击方法是如何指定的?

每一个都是 QSTileImpl 的子类 ,有定义点击方法.

QSTileHost 来自与dagger的注入

调用 QSTileHost 的 getTiles方法

QSTileHost 的Tiles来自哪里?

何时创建一个WifiTile

1 QSFactoryImpl 的 createTile 方法中.

2 在 QSTileHost.java的 createTile 方法调用 QSFactoryImpl 的 createTile 方法

在这里插入图片描述

public void onTuningChanged(String key, String newValue)

newValue 的内容为: wifi,bt,dnd,flashlight,battery,cell,airplane,cast,screenrecord,dbg:mem

当前用户的 tiles 通过调用 Settings.Secure.putStringForUser 被保存在 sysui_qs_tiles 字段下 。

TunerServiceImpl 的方法 addTunable 的被调用方法堆栈:

加载tiles的顺序: 先去Settings.Secure 下查找 sysui_qs_tiles ,如果没有则使用系统默认的: quick_settings_tiles_default
代码是在QSTileHost 的 loadTileSpecs 方法

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/776007.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

37.网络游戏逆向分析与漏洞攻防-游戏网络通信数据解析-解码器细化类的实现

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 如果看不懂、不知道现在做的什么,那就跟着做完看效果 内容参考于:易道云信息技术研究院VIP课 上一个内容:36.数据解码器的…

Docker进阶:Docker-compose 实现服务弹性伸缩

Docker进阶:Docker-compose 实现服务弹性伸缩 一、Docker Compose基础概念1.1 Docker Compose简介1.2 Docker Compose文件结构 二、弹性伸缩的原理和实现步骤2.1 弹性伸缩原理2.2 实现步骤 三、技术实践案例3.1 场景描述3.2 配置Docker Compose文件3.3 使用 docker-…

今天起,Windows可以一键召唤GPT-4了

现在,OpenAI 大模型加持的 Copilot 功能终于登陆 Windows 了。 把 Copilot 按钮放在 Windows 桌面的任务栏,甚至实体键盘上,用大模型提升每个人的生产效率。 美东时间 3 月 21 日周四,生成式 AI 领军的微软又为我们带来了一点小…

Web系统开发之——文章管理

原文地址:Web系统开发之——文章管理 - Pleasure的博客 下面是正文内容: 前言 经过一番考量,关于Web应用系统功能部分的开发,决定采取基础的文字文章管理为核心功能。 不再采取前后端分阶段完成的方式,而是以一个一个…

【QT入门】 QTabWidget各种常见用法详解

往期回顾: 【QT入门】 Qt代码创建布局之分裂器布局详解-CSDN博客 【QT入门】 Qt代码创建布局之setLayout使用-CSDN博客 【QT入门】 Qt代码创建布局之多重布局变换与布局删除技巧-CSDN博客 【QT入门】 QTabWidget各种常见用法详解 一般来说,学一个新的控…

报错there is no HDFS_NAMENODE_USER defined

在Hadoop安装目录下找到sbin文件夹,修改里面的四个文件 1、对于start-dfs.sh和stop-dfs.sh文件,添加下列参数: HDFS_DATANODE_USERroot HDFS_DATANODE_SECURE_USERhdfs HDFS_NAMENODE_USERroot HDFS_SECONDARYNAMENODE_USERroot 2、对于st…

2024-2029年中国中子探测器行业市场深度调研及发展前景预测报告

中子探测器可应用范围广泛 全球市场规模持续扩大 中子探测器,是一种检测中子辐射的仪器,采用中子吸收材料,利用中子与材料相互作用,来检测是否存在中子以及中子能量强度。中子是不带电荷的粒子,无法利用电离辐射探测器…

20221124 kafka实时数据写入Redis

一、上线结论 实现了将用户线上实时浏览的沉浸式视频信息,保存在Redis中这样一个功能。为实现沉浸式视频离线推荐到实时推荐提供了强有力的支持。目前只是应用在沉浸式场景,后续也能扩展到其他所有场景。用于两个场景:(1&#xf…

2024年天津财经大学珠江学院退役大学生士兵专升本专业课报名须知

天津财经大学珠江学院2024年高职升本科(面向退役大学生士兵)职业技能综合考查报考须知 一、报名条件 报考天津财经大学珠江学院2024年高职升本科职业技能综合考查的退役大学生士兵应符合天津市及我院规定的报考资格。考生须完成天津市高职升本科文化考…

数据结构/C++:位图 布隆过滤器

数据结构/C:位图 & 布隆过滤器 位图实现应用 布隆过滤器实现应用 哈希表通过映射关系,实现了O(1)的复杂度来查找数据。相比于其它数据结构,哈希在实践中是一个非常重要的思想,本博客将介绍哈希思想的两大应用,位图…

HTTPS:原理、使用方法及安全威胁

文章目录 一、HTTPS技术原理1.1 主要技术原理1.2 HTTPS的工作过程1.2.1 握手阶段1.2.2 数据传输阶段 1.3 CA证书的签发流程1.4 HTTPS的安全性 二、HTTPS使用方法三、HTTPS安全威胁四、总结 HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket …

git提交-分支开发合并-控制台操作

git提交-分支开发合并-控制台操作 git的基本概念工作区、暂存区和版本库工作区:就是你在电脑里能看到的目录(隐藏目录 .git不算工作区)。暂存区:英文叫 stage 或 index。一般存放在本地的.git目录下的index 文件(.git/…

036—pandas 按行将列名根据值由大到小排序

前言 数据处理中,按行排列的列名可以提供更直观的数据探索和分析方式。 你可以逐行查看列名,了解每列的含义和特征,有助于更好地理解数据集的结构和内容。 需求: 需要增加一列「分布方式」,每行的值是本行基金名称对…

双指针算法:三数之和

文章目录 一、[题目链接&#xff1a;三数之和](https://leetcode.cn/problems/3sum/submissions/515727749/)二、思路讲解三、代码演示 先赞后看&#xff0c;养成习惯&#xff01;&#xff01;&#xff01;^ _ ^<3 ❤️ ❤️ ❤️ 码字不易&#xff0c;大家的支持就是我坚持…

对BSV区块链网络访问规则NAR通俗易懂的解释

​​发表时间&#xff1a;2024年2月21日 我们可以把BSV区块链网络想象成在公园里举办的一场大型公共足球比赛。虽然这是一场友谊赛&#xff0c;但在比赛前&#xff0c;每个人都要理解并同意基本规则。举例来说&#xff0c;除了守门员之外&#xff0c;任何球员不得用手触球。 在…

JetBrains全家桶激活,分享 WebStorm 2024 激活的方案

大家好&#xff0c;欢迎来到金榜探云手&#xff01; WebStorm公司简介 JetBrains 是一家专注于开发工具的软件公司&#xff0c;总部位于捷克。他们以提供强大的集成开发环境&#xff08;IDE&#xff09;而闻名&#xff0c;如 IntelliJ IDEA、PyCharm、和 WebStorm等。这些工具…

【动手学深度学习】深入浅出深度学习之线性神经网络

目录 &#x1f31e;一、实验目的 &#x1f31e;二、实验准备 &#x1f31e;三、实验内容 &#x1f33c;1. 线性回归 &#x1f33b;1.1 矢量化加速 &#x1f33b;1.2 正态分布与平方损失 &#x1f33c;2. 线性回归的从零开始实现 &#x1f33b;2.1. 生成数据集 &#x…

Linux:文件增删 文件压缩指令

Linux&#xff1a;文件增删 & 文件压缩指令 文件增删touch指令mkdir指令cp指令rm指令rmdir指令 文件压缩zip & unzip 指令tar指令 文件增删 touch指令 功能&#xff1a;touch命令参数可更改文档或目录的日期时间&#xff0c;包括存取时间和更改时间&#xff0c;或者新…

离线数仓(八)【DWD 层开发】

前言 1、DWD 层开发 DWD层设计要点&#xff1a; &#xff08;1&#xff09;DWD层的设计依据是维度建模理论&#xff08;主体是事务型事实表&#xff08;选择业务过程 -> 声明粒度 -> 确定维度 -> 确定事实&#xff09;&#xff0c;另外两种周期型快照事实表和累积型…