当前位置: 首页 > news >正文

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.lryc.cn/news/332924.html

相关文章:

  • Gradle系列(二):Groovy基础
  • PW1503限流芯片:可达3A限流,保障USB电源管理安全高效
  • 深挖苹果Find My技术,伦茨科技ST17H6x芯片赋予产品功能
  • Web3 革命:揭示区块链技术的全新应用
  • [实战经验]Mybatis的mapper.xml参数#{para}与#{para, jdbcType=BIGINT}有什么区别?
  • 高并发下的linux优化
  • 不同设备使用同一个Git账号
  • 蓝桥杯算法题:区间移位
  • 提取word文档里面的图片
  • MybatisPlus总结
  • 使用 mitmproxy 抓包 grpc
  • 【解决Jetson Nano 内存不足问题】纯命令行将 Conda 环境迁移到 SD 卡
  • 【RISC-V 指令集】RISC-V 向量V扩展指令集介绍(七)- 向量算术指令格式
  • 顺序表的应用
  • 2024-04-03-代码随想录算法训练营第一天[LeetCode704二分查找、LeetCode27移除元素]
  • [Go运行问题]/lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_xx‘ not found
  • matrix-breakout-2-morpheus 靶机渗透
  • 爬虫 新闻网站 以湖南法治报为例(含详细注释) V1.0
  • 物联网实战--入门篇之(十)安卓QT--后端开发
  • [Java]网络编程
  • 重读Java设计模式: 适配器模式解析
  • MySQL面试题系列-9
  • 书生·浦语训练营二期第二次笔记
  • python_3
  • 【Python】 使用Apache Tika和Python实现zip、csv、xls等多格式文件文本内容提取
  • C语言如何将多维数组名作为函数参数?
  • 2013年认证杯SPSSPRO杯数学建模C题(第二阶段)公路运输业对于国内生产总值的影响分析全过程文档及程序
  • 《LeetCode力扣练习》代码随想录——二叉树(合并二叉树---Java)
  • openstack云计算(二)——使用Packstack安装器安装一体化OpenStack云平台
  • Flutter Don‘t use ‘BuildContext‘s across async gaps.