Android 12 SystemUI下拉状态栏禁止QuickQSPanel展开

news2024/11/13 9:37:53

1.概述

遇到需求,QuickQSPanel首次下拉后展示快捷功能模块以后就是显示QuickQSPanel,而不展开QSPanel,接下来要从下滑手势下拉出状态栏分析功能实现。也就是直接是展开状态。

2、涉及核心类

frameworks\base\packages\SystemUI\src\com\android\systemui\statusbar\phone

Android12或者Android13

frameworks\base\packages\SystemUI\src\com\android\systemui\statusbar\phone\NotificationPanelViewController.java
frameworks/base/packages/SystemUI/res/layout/status_bar_expanded.xml


Android10
 
frameworks\base\packages\SystemUI\src\com\android\systemui\statusbar\phone\NotificationPanelViewController.java
frameworks/base/packages/SystemUI/res/layout/status_bar_expanded.xml

3、修改

 private void setQsExpansion(float height) {

            // mQs  不等于空直接复用
            if (mQs != null) return;
            // mQs 等于空新建

        height = Math.min(Math.max(height, mQsMinExpansionHeight), mQsMaxExpansionHeight);
        mQsFullyExpanded = height == mQsMaxExpansionHeight && mQsMaxExpansionHeight != 0;
        if (height > mQsMinExpansionHeight && !mQsExpanded && !mStackScrollerOverscrolling
                && !mDozing) {
            setQsExpanded(true);
        } else if (height <= mQsMinExpansionHeight && mQsExpanded) {
            setQsExpanded(false);
        }
        mQsExpansionHeight = height;
        updateQsExpansion();
        requestScrollerTopPaddingUpdate(false /* animate */);
        updateHeaderKeyguardAlpha();
        if (mBarState == StatusBarState.SHADE_LOCKED || mBarState == KEYGUARD) {
            updateKeyguardBottomAreaAlpha();
            positionClockAndNotifications();
            updateBigClockAlpha();
        }

        if (mAccessibilityManager.isEnabled()) {
            mView.setAccessibilityPaneTitle(determineAccessibilityPaneTitle());
        }

        if (!mFalsingManager.isUnlockingDisabled() && mQsFullyExpanded
                && mFalsingCollector.shouldEnforceBouncer()) {
            mStatusBar.executeRunnableDismissingKeyguard(null, null /* cancelAction */,
                    false /* dismissShade */, true /* afterKeyguardGone */, false /* deferred */);
        }
        for (int i = 0; i < mExpansionListeners.size(); i++) {
            mExpansionListeners.get(i).onQsExpansionChanged(
                    mQsMaxExpansionHeight != 0 ? mQsExpansionHeight / mQsMaxExpansionHeight : 0);
        }
        if (DEBUG) {
            mView.invalidate();
        }
    }

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

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

相关文章

STL经典案例(四)——实验室预约综合管理系统(项目涉及知识点很全面,内容有点多,耐心看完会有收获的!)

项目干货满满&#xff0c;内容有点过多&#xff0c;看起来可能会有点卡。系统提示读完超过俩小时&#xff0c;建议分多篇发布&#xff0c;我觉得分篇就不完整了&#xff0c;失去了这个项目的灵魂 一、需求分析 高校实验室预约管理系统包括三种不同身份&#xff1a;管理员、实…

【C++】手把手教你看懂的 STL map 详解(超详细解析,小白一看就懂!!)

目录 一、前言 二、预备知识 &#x1f4a2;关联式容器&#x1f4a2; &#x1f4a2;键值对&#x1f4a2; &#x1f4a2;哈希结构的关联式容器&#x1f4a2; 三、map 详解 &#x1f525;map 的介绍 &#x1f525;map的模板参数说明 &#x1f525;map的构造…

HarmonyOS应用开发( Beta5.0)HOS-用户认证服务:面部识别

介绍 User Authentication Kit&#xff08;用户认证服务&#xff09;提供了基于用户在设备本地注册的人脸和指纹来认证用户身份的能力。 用户向应用/系统服务请求访问某些个人数据或执行某些敏感操作时&#xff0c;应用/系统服务将调用系统用户身份认证控件对用户身份进行认证…

AI在医学领域:MIL回归用于前列腺癌复发预测

2024年&#xff0c;全球男性新癌症病例预计为1029080例&#xff0c;其中前列腺癌病例预计为29%。前列腺癌是男性中第二常见的癌症类型&#xff0c;仅次于肺癌。它主要影响老年男性&#xff0c;且发病率随年龄增长而增加。前列腺癌的主要治疗方法是前列腺切除术&#xff0c;但术…

知识竞赛答题软件应用场景有哪些

知识竞赛答题软件应用常见场景有哪些&#xff1f; 一、场景分析&#xff1a;该答题软件基于java技术和原生小程序开发完成&#xff0c;其功能主要包括&#xff1a;个人答题、好友pk、排位pk升级赛、专题pk答题、多人pk答题、积分兑换、排行榜等七大功能模块页面&#xff0c;适用…

记一次学习--内网穿透

目录 环境搭建 两张网卡如何配置 Ubuntu配置 渗透 ubuntu的拿下 centos的拿下 探测内网环境 fscan扫描 msf上马 渗透 拿下bage cms windows的拿下 ​编辑 使用fscan查看内网环境&#xff0c;发现了192.168.110.128这台设备 使用msf上马&#xff0c;现在这台机器是…

npm安装electron报错 RequestError: connect ETIMEDOUT 185.199.110.133:443

文章目录 npm安装electron报错的问题解决办法 npm安装electron报错的问题 报错信息如下&#xff1a; 由于网络原因一直报错&#xff0c;但是安装其他依赖没问题&#xff0c;查看源&#xff0c;使用淘宝源&#xff0c;也无效 解决办法 设置electron_mirror专用源: npm con…

C++入门基础知识57——【关于C++日期 时间】

成长路上不孤单&#x1f60a;【14后&#xff0c;C爱好者&#xff0c;持续分享所学&#xff0c;如有需要欢迎收藏转发&#x1f60a;&#x1f60a;&#x1f60a;&#x1f60a;&#x1f60a;&#x1f60a;&#x1f60a;&#xff01;&#xff01;&#xff01;&#xff01;&#xff…

分布式部署①

&#x1f4d1;打牌 &#xff1a; da pai ge的个人主页 &#x1f324;️个人专栏 &#xff1a; da pai ge的博客专栏 ☁️宝剑锋从磨砺出&#xff0c;梅花香自苦寒来 1. 需要部署的服务 Nacos 理论上,应…

Popup源码分析 -- ant-design-vue系列

Popup源码分析 – ant-design-vue系列 1 极简代码 直接返回两个组件&#xff1a;Mask 和 PopupInner&#xff0c;后者在上一篇已经分析过了。下面我们先看一下 Mask的源码。 setup(props, { slots }) {return () > {if (!props.visible) return null;return (<div cla…

【Qt】窗口移动和大小改变事件

窗口移动和大小改变事件 moveEvent窗口移动时触发的事件resizeEvent窗口大小改变时触发的事件 例子&#xff1a;测试移动窗口和改变窗口事件 代码展示 #include "widget.h" #include "ui_widget.h"#include <QDebug> #include <QMoveEvent> …

chapter13-常用类——(String类)——day16

目录 477-StringBuffer方法 477-StringBuffer练习 479-StringBuilder结构剖析 480-StringBuilder应用 477-StringBuffer方法 三个字换两个字 477-StringBuffer练习 1、下面那个StringBuffer&#xff08;str&#xff09;有参构造器&#xff0c;在传入的是null的时候会报错&a…

mybatisplus使用OptimisticLockerInnerInterceptor实现版本号乐观锁

目录 OptimisticLockerInnerInterceptor 介绍 创建项目 创建项目 引入依赖 创建数据表 application.yml配置 项目结构 配置乐观锁拦截器 创建实体类 创建mapper 创建service 创建返回包装类BaseResponse 创建UserController 测试 查询 修改 ​编辑 修改后再查…

imu+wheel融合

ImuWheel融合 文章目录 ImuWheel融合1 轮速计1.1 航迹递推1.1.1 基于欧拉法1.1.2 基于二阶Runge-Kutta积分1.1.3 群空间闭式积分 1.2 雅可比计算 2 IMU观测更新3 数据处理 1 轮速计 1.1 航迹递推 ​ 常见的轮速计积分的方式有三种&#xff1a;欧拉积分、二阶Runge-Kutta积分、…

拯救者y9000p外接显示器黑屏

一开始会出现偶尔黑屏的情况&#xff0c;短则一两秒&#xff0c;长则五分钟。开始以为是屏幕或者是hdmi线的问题。后来网上查&#xff0c;发现可能是联想自带的XRite颜色校准器。 如果不需要该软件可以设置成为开机禁用&#xff0c;这样暂时就没问题了。

【数据结构与算法 | 灵神题单 | 删除链表篇】力扣3217, 82, 237

总结&#xff0c;删除链表节点问题使用到列表&#xff0c;哈希表&#xff0c;递归比较容易超时&#xff0c;我觉得使用计数排序比较稳&#xff0c;处理起来也不是很难。 1. 力扣3217&#xff1a;从链表中移除在数组中的节点 1.1 题目&#xff1a; 给你一个整数数组 nums 和一…

LVM在Kubernetes下的最佳实践方案--TopoLVM

TopoLVM介绍及实践 LVM在Kubernetes下的最佳实践方案–TopoLVM。 1. 简介 TopoLVM 是一种基于 LVM&#xff08;Logical Volume Manager&#xff09;的 CSI&#xff08;Container Storage Interface&#xff09;插件&#xff0c;专为 Kubernetes 环境设计&#xff0c;旨在提供…

分布式部署②

&#x1f4d1;打牌 &#xff1a; da pai ge的个人主页 &#x1f324;️个人专栏 &#xff1a; da pai ge的博客专栏 ☁️宝剑锋从磨砺出&#xff0c;梅花香自苦寒来 对第四台服务器的补充 产品服务,订…

HTML 超链接

每一个网站都是由许多独立的网页组成&#xff0c;网页之家通常都是通过超链接来相互连接的。超链接可以让用户在各个独立的网页之间跳转。 <!DOCTYPE html> <html> <head><meta charset"utf-8" /><title>colspan属性</title>&l…

Linux一周大项目:库的移植

挂载--->将所需库文件夹复制到nfs文件夹中&#xff08;不在终端进行&#xff09;--->cp库文件到开发板 /usr/lib step1 step3 ​​​​​​​​​​​​​​ 一、解压文件 解压zip文件 sudo unzip xxx.zip 解压tar文件 sudo tar -xvf xxx.tar 修改权限 sudo ch…