KeyguardClockSwitch的父类

KeyguardClockSwitch 定义在KeyguardStatusView中,

  mClockView = findViewById(R.id.keyguard_clock_container);

KeyguardClockSwitch的父类为:

Class Name: LinearLayout
Class Name: KeyguardStatusView
Class Name: NotificationPanelView
Class Name: NotificationShadeWindowView

layout的包含关系为: keyguard_status_view.xml -> status_bar_expanded.xml -> super_notification_shade.xml

而 super_notification_shade.xml 是在 SuperStatusBarViewFactory的

keyguard_status_view.xml

<?xml version="1.0" encoding="utf-8"?>
<!--
**
** Copyright 2009, The Android Open Source Project
**
** Licensed under the Apache License, Version 2.0 (the "License")
** you may not use this file except in compliance with the License.
** You may obtain a copy of the License at
**
**     http://www.apache.org/licenses/LICENSE-2.0
**
** Unless required by applicable law or agreed to in writing, software
** distributed under the License is distributed on an "AS IS" BASIS,
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
** See the License for the specific language governing permissions and
** limitations under the License.
*/
--><!-- This is a view that shows general status information in Keyguard. -->
<com.android.keyguard.KeyguardStatusViewxmlns:android="http://schemas.android.com/apk/res/android"xmlns:androidprv="http://schemas.android.com/apk/res-auto"android:id="@+id/keyguard_status_view"android:orientation="vertical"android:layout_width="match_parent"android:layout_height="wrap_content"android:gravity="center_horizontal|top"><LinearLayoutandroid:id="@+id/status_view_container"android:layout_width="match_parent"android:layout_height="wrap_content"android:clipChildren="false"android:clipToPadding="false"android:orientation="vertical"><TextViewandroid:id="@+id/logout"android:layout_height="@dimen/logout_button_layout_height"android:layout_width="wrap_content"android:layout_gravity="center_horizontal"android:layout_centerHorizontal="true"android:layout_marginBottom="@dimen/logout_button_margin_bottom"android:gravity="center"android:paddingLeft="@dimen/logout_button_padding_horizontal"android:paddingRight="@dimen/logout_button_padding_horizontal"android:background="@drawable/logout_button_background"android:fontFamily="@*android:string/config_bodyFontFamilyMedium"android:textAllCaps="true"android:textColor="?android:attr/textColorPrimary"android:textSize="13sp"android:text="@*android:string/global_action_logout" /><includelayout="@layout/keyguard_clock_switch"android:id="@+id/keyguard_clock_container"android:layout_width="match_parent"android:layout_height="wrap_content" /><TextViewandroid:id="@+id/owner_info"android:layout_marginLeft="16dp"android:layout_marginRight="16dp"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginTop="@dimen/date_owner_info_margin"android:layout_gravity="center_horizontal"android:layout_centerHorizontal="true"android:textColor="?attr/wallpaperTextColorSecondary"android:textSize="@dimen/widget_label_font_size"android:letterSpacing="0.05"android:ellipsize="marquee"android:singleLine="true" /><com.android.systemui.statusbar.phone.NotificationIconContainerandroid:id="@+id/clock_notification_icon_container"android:layout_width="match_parent"android:layout_height="@dimen/notification_shelf_height"android:layout_marginTop="@dimen/widget_vertical_padding"android:visibility="invisible"/></LinearLayout>
</com.android.keyguard.KeyguardStatusView>

status_bar_expanded.xml

<?xml version="1.0" encoding="utf-8"?>
<!--
**
** Copyright 2006, The Android Open Source Project
**
** Licensed under the Apache License, Version 2.0 (the "License");
** you may not use this file except in compliance with the License.
** You may obtain a copy of the License at
**
**     http://www.apache.org/licenses/LICENSE-2.0
**
** Unless required by applicable law or agreed to in writing, software
** distributed under the License is distributed on an "AS IS" BASIS,
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
** See the License for the specific language governing permissions and
** limitations under the License.
*/
--><com.android.systemui.statusbar.phone.NotificationPanelViewxmlns:android="http://schemas.android.com/apk/res/android"xmlns:systemui="http://schemas.android.com/apk/res-auto"android:id="@+id/notification_panel"android:layout_width="match_parent"android:layout_height="match_parent"android:background="@android:color/transparent"><FrameLayoutandroid:id="@+id/big_clock_container"android:layout_width="match_parent"android:layout_height="match_parent"android:visibility="gone" /><includelayout="@layout/keyguard_status_view"android:visibility="gone" /><com.android.systemui.statusbar.phone.NotificationsQuickSettingsContainerandroid:layout_width="match_parent"android:layout_height="match_parent"android:layout_gravity="@integer/notification_panel_layout_gravity"android:id="@+id/notification_container_parent"android:clipToPadding="false"android:clipChildren="false"><include layout="@layout/dock_info_overlay" /><FrameLayoutandroid:id="@+id/qs_frame"android:layout="@layout/qs_panel"android:layout_width="@dimen/qs_panel_width"android:layout_height="match_parent"android:layout_gravity="@integer/notification_panel_layout_gravity"android:clipToPadding="false"android:clipChildren="false"systemui:viewType="com.android.systemui.plugins.qs.QS" /><com.android.systemui.statusbar.notification.stack.NotificationStackScrollLayoutandroid:id="@+id/notification_stack_scroller"android:layout_marginTop="@dimen/notification_panel_margin_top"android:layout_width="@dimen/notification_panel_width"android:layout_height="match_parent"android:layout_gravity="@integer/notification_panel_layout_gravity"android:layout_marginBottom="@dimen/close_handle_underlap" /><include layout="@layout/ambient_indication"android:id="@+id/ambient_indication_container" /><include layout="@layout/photo_preview_overlay" /><ViewStubandroid:id="@+id/keyguard_user_switcher"android:layout="@layout/keyguard_user_switcher"android:layout_height="match_parent"android:layout_width="match_parent" /><includelayout="@layout/keyguard_status_bar"android:visibility="invisible" /><Buttonandroid:id="@+id/report_rejected_touch"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginTop="@dimen/status_bar_header_height_keyguard"android:text="@string/report_rejected_touch"android:visibility="gone" /></com.android.systemui.statusbar.phone.NotificationsQuickSettingsContainer><includelayout="@layout/keyguard_bottom_area"android:visibility="gone" /><com.android.systemui.statusbar.AlphaOptimizedViewandroid:id="@+id/qs_navbar_scrim"android:layout_height="96dp"android:layout_width="match_parent"android:layout_gravity="bottom"android:visibility="invisible"android:background="@drawable/qs_navbar_scrim" /><include layout="@layout/status_bar_expanded_plugin_frame"/>
</com.android.systemui.statusbar.phone.NotificationPanelView>

super_notification_shade.xml

<?xml version="1.0" encoding="utf-8"?>
<!--
**
** Copyright 2020, The Android Open Source Project
** super_notification_shade.xml
** Licensed under the Apache License, Version 2.0 (the "License");
** you may not use this file except in compliance with the License.
** You may obtain a copy of the License at
**
**     http://www.apache.org/licenses/LICENSE-2.0
**
** Unless required by applicable law or agreed to in writing, software
** distributed under the License is distributed on an "AS IS" BASIS,
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
** See the License for the specific language governing permissions and
** limitations under the License.
*/
--><!-- This is the notification shade window. -->
<com.android.systemui.statusbar.phone.NotificationShadeWindowViewxmlns:android="http://schemas.android.com/apk/res/android"xmlns:sysui="http://schemas.android.com/apk/res-auto"android:layout_width="match_parent"android:layout_height="match_parent"android:fitsSystemWindows="true"><com.android.systemui.statusbar.BackDropViewandroid:id="@+id/backdrop"android:layout_width="match_parent"android:layout_height="match_parent"android:visibility="gone"sysui:ignoreRightInset="true"><ImageView android:id="@+id/backdrop_back"android:layout_width="match_parent"android:scaleType="centerCrop"android:layout_height="match_parent" /><ImageView android:id="@+id/backdrop_front"android:layout_width="match_parent"android:layout_height="match_parent"android:scaleType="centerCrop"android:visibility="invisible" /></com.android.systemui.statusbar.BackDropView><com.android.systemui.statusbar.ScrimViewandroid:id="@+id/scrim_behind"android:layout_width="match_parent"android:layout_height="match_parent"android:importantForAccessibility="no"sysui:ignoreRightInset="true"/><include layout="@layout/status_bar_expanded"android:layout_width="match_parent"android:layout_height="match_parent"android:visibility="invisible" /><include layout="@layout/brightness_mirror" /><com.android.systemui.statusbar.ScrimViewandroid:id="@+id/scrim_in_front"android:layout_width="match_parent"android:layout_height="match_parent"android:importantForAccessibility="no"sysui:ignoreRightInset="true"/><LinearLayoutandroid:id="@+id/lock_icon_container"android:orientation="vertical"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginTop="@dimen/status_bar_height"android:layout_gravity="top|center_horizontal"><com.android.systemui.statusbar.phone.LockIconandroid:id="@+id/lock_icon"android:layout_width="@dimen/keyguard_lock_width"android:layout_height="@dimen/keyguard_lock_height"android:layout_gravity="center_horizontal"android:layout_marginTop="@dimen/keyguard_lock_padding"android:contentDescription="@string/accessibility_unlock_button"android:src="@*android:drawable/ic_lock"android:scaleType="center" /><com.android.keyguard.KeyguardMessageAreaandroid:id="@+id/keyguard_message_area"style="@style/Keyguard.TextView"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginTop="@dimen/keyguard_lock_padding"android:gravity="center"android:singleLine="true"android:ellipsize="marquee"android:focusable="true" /></LinearLayout>
</com.android.systemui.statusbar.phone.NotificationShadeWindowView>

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

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

相关文章

如何在iPhone上恢复永久删除的照片?

2007 年&#xff0c;Apple Inc. 推出了这款震撼人心的智能手机&#xff0c;后来被称为 iPhone。您会惊讶地发现&#xff0c;迄今为止&#xff0c;Apple Inc. 已售罄 7 亿台 iPhone 设备。根据 2023 年 8 月的一项调查数据&#xff0c;95% 的智能手机利润都落入了苹果公司的口袋…

关系型数据库与非关系型数据库、Redis数据库

相比于其他的内存/缓存数据库&#xff0c;redis可以方便的实现持久化的功能&#xff08;保存至磁盘中&#xff09; 一、关系数据库与非关系型数据库 1.1 关系型数据库 一个结构化的数据库&#xff0c;创建在关系模型基础上一般面向于记录 SQL语句 (标准数据查询语言) 就是一种…

【攻防世界】ics-05

php://filter 伪协议查看源码 preg_replace 函数漏洞 1.获取网页源代码。多点点界面&#xff0c;发现点云平台设备维护中心时&#xff0c;页面发生变化。 /?pageindex 输入什么显示什么&#xff0c;有回显。 用php://filter读取网页源代码 ?pagephp://filter/readconvert.…

MPLS-基础、LSR、LSP、标签、体系结构

MPLS技术 MPLS基础 MPLS&#xff1a;转发数据时&#xff0c;只在网络边缘分析IP报文头&#xff0c;不在每一跳都分析&#xff0c;节约了转发时间。 MPLS&#xff1a;Multiprotocol Label Switching&#xff0c;多协议标签交换骨干网技术。主要应用&#xff1a;VPN、流量工程…

【数据库】MySQL InnoDB存储引擎详解 - 读书笔记

MySQL InnoDB存储引擎详解 - 读书笔记 InnoDB 存储引擎概述InnoDB 存储引擎的版本InnoDB 体系架构内存缓冲池LRU List、Free List 和 Flush List重做日志缓冲&#xff08;redo log buffer&#xff09;额外的内存池 存储结构表空间系统表空间独立表空间通用表空间undo表空间临时…

PyQt qrc2py 使用PowerShell将qrc文件转为py文件并且将导入模块PyQt或PySide转换为qtpy模块开箱即用

前言 由于需要使用不同的qt环境&#xff08;PySide&#xff0c;PyQt&#xff09;所以写了这个脚本&#xff0c;使用找到的随便一个rcc命令去转换qrc文件&#xff0c;然后将导入模块换成qtpy这个通用库(支持pyside2-6&#xff0c;pyqt5-6)&#xff0c;老版本的是Qt.py(支持pysi…

Scaling Law解析

文章目录 scaling law一个token的计算量幂律关系幂律规律实际指导 scaling law 幂律法则&#xff1a;对大模型数据量、参数量、算力之间的最优分配 不仅仅是对语言大模型&#xff0c;对主要基于tranformer的多模态大模型基本都有效 对于Decoder-only结构模型(GPT架构)&#…

[技术闲聊]我对电路设计的理解(十)-示波器选取

电路出故障了&#xff0c;要解决问题就需要循证辩药&#xff0c;调试工具有多样&#xff0c;但对于硬件工程师来说&#xff0c;调试时的眼睛必是示波器无疑&#xff0c;波形样式、幅度、频率等都是疑难杂症散发出的信息&#xff0c;捕获流量密码&#xff0c;就能淘到金&#xf…

Ps:合并到 HDR Pro

Ps菜单&#xff1a;文件/自动/合并到 HDR Pro Automate/Merge to HDR Pro 合并到 HDR Pro Merge to HDR Pro命令可以将同一场景的具有不同曝光度的多个图像合并起来&#xff0c;从而捕获单个 HDR 图像中的全部动态范围。 合并到 HDR Pro 命令分两步进行。 首先&#xff0c;需要…

java -网络编程socket-聊天室-02

完整版代码 java -聊天室的代码: 用于存放聊天室的项目的代码和思路导图https://gitee.com/to-uphold-justice-for-others/java---code-for-chat-rooms.git 先引入线程的正统解释 线程&#xff08;Thread&#xff09;是程序执行流的最小单元。线程是操作系统分配CPU时间片的基…

【HTML】制作一个简单的三角形动态图形

目录 前言 开始 HTML部分 CSS部分 效果图 总结 前言 无需多言&#xff0c;本文将详细介绍一段HTML和CSS代码&#xff0c;具体内容如下&#xff1a; 开始 首先新建文件夹&#xff0c;创建两个文本文档&#xff0c;其中HTML的文件名改为[index.html]&#xff0c;CSS的文件名…

Day83:服务攻防-开发组件安全JacksonFastJson各版本XStreamCVE环境复现

目录 J2EE-组件Jackson-本地demo&CVE 代码执行 (CVE-2020-8840) 代码执行 (CVE-2020-35728&#xff09; J2EE-组件FastJson-本地demo&CVE FastJson < 1.2.24 FastJson < 1.2.47 FastJson < 1.2.80 (利用条件比较苛刻) J2EE-组件XStream-靶场&CVE …

【JAVA】postman import certificates in project 导入证书pfx

1. 打开这个按钮 2. File ->Settings 3. 打开“certificates”, Add certificates 添加证书 4. 输入证书地址&#xff0c;然后选择证书文件pfx , 输入证书密码。点击添加就可以了。 特别提醒&#xff1a; 推荐本地自己证书验证软件&#xff0c;“KeyStore” 这个软件可以…

Revit模型进入虚幻引擎UE5教程

一、背景 小伙伴们是否有Revit进入虚幻引擎交互的需求呢&#xff1f; 二、实现功能 1.Revit进入虚幻UE5,包含模型属性&#xff0c;材质等 2.实现BIM构件点选&#xff0c;高亮&#xff0c;属性展示 3.实现BIM模型分层显示&#xff0c;爆炸等效果 三、教程地址 教程&#x…

软考 系统架构设计师系列知识点之数据库基本概念(1)

所属章节&#xff1a; 第6章. 数据库设计基础知识 第1节 数据库基本概念 数据&#xff08;Data&#xff09;是描述事务的符号记录&#xff0c;它具有多种表现形式&#xff0c;可以是文字、图形、图像、声音和语言等。信息&#xff08;Information&#xff09;是现实世界事物的…

力扣---删除链表的倒数第 N 个结点

给你一个链表&#xff0c;删除链表的倒数第 n 个结点&#xff0c;并且返回链表的头结点。 示例 1&#xff1a; 输入&#xff1a;head [1,2,3,4,5], n 2 输出&#xff1a;[1,2,3,5]示例 2&#xff1a; 输入&#xff1a;head [1], n 1 输出&#xff1a;[]示例 3&#xff1a…

IP归属地在互联网行业中的应用

摘要&#xff1a;IP&#xff08;Internet Protocol&#xff09;地址归属地是指互联网上某个IP地址所对应的地理位置信息。在互联网行业中&#xff0c;IP归属地具有重要的应用价值&#xff0c;包括网络安全、广告定向、用户定位等方面。IP数据云将探讨IP归属地在互联网行业中的应…

物联网实战--驱动篇之(一)EEPROM存储器(AT24C64)

目录 一、驱动概述 二、AT24C64简介 三、驱动编写 四、驱动应用 一、驱动概述 这是驱动篇的第一篇&#xff0c;所以先说明下驱动篇的作用和书写计划。之前的净化器项目已有提及&#xff0c;向ESP8266、SHT30这些都属于驱动设备&#xff0c;主芯片STM32是核心&#xff0c;相…

传输层 --- TCP (下篇)

目录 1. 超时重传 1.1. 数据段丢包 1.2. 接收方发送的ACK丢包 1.3. 超时重传的超时时间如何设置 2. 流量控制 3. 滑动窗口 3.1. 初步理解滑动窗口 3.2. 滑动窗口的完善理解 3.3. 关于快重传的补充 3.4. 快重传和超时重传的区别 4. 拥塞控制 4.1. 拥塞控制的宏观认识…

【MySQL】如何判断一个数据库是否出问题

在实际的应用中&#xff0c;其实大多数是主从结构。而采用主备&#xff0c;一般都需要一定的费用。 对于主备&#xff0c;如果主机故障&#xff0c;那么只需要直接将流量打到备机就可以&#xff0c;但是对于一主多从&#xff0c;还需要将从库连接到主库上。 对于切换的操作&a…