Android 11.0 修改系统显示大小导航栏消失
Android 11.0 修改系统显示大小导航栏消失
1.显示大小设置为大时,导航栏图标不显示。
设置为大,较大,最大时,导航栏图标不显示。
2.开始怀疑是导航栏被隐藏了,各种折腾无效。
3.发现:
frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/EdgeBackGestureHandler.java中
updateCurrentUserResources方法异常,加打印:
android.util.Log.d(TAG, "updateCurrentUserResources: navigation_bar_gesture_height "+ res.getDimension(com.android.internal.R.dimen.navigation_bar_gesture_height));android.util.Log.d(TAG, "updateCurrentUserResources: navigation_bar_frame_height "+ res.getDimension(com.android.internal.R.dimen.navigation_bar_frame_height));android.util.Log.d(TAG, "updateCurrentUserResources: navigation_bar_height "+ res.getDimension(com.android.internal.R.dimen.navigation_bar_height));android.util.Log.d(TAG, "updateCurrentUserResources: defaultGestureHeight "+ defaultGestureHeight + " dm.density " + dm.density + " dm.densityDpi " + dm.densityDpi);
结果:
2024-06-24 18:33:55.932 686-686 EdgeBackGestureHandler com.android.systemui D updateCurrentUserResources: dm:DisplayMetrics{density=1.1875, width=1920, height=720, scaledDensity=1.1875, xdpi=320.0, ydpi=320.0}
2024-06-24 18:33:55.932 686-686 EdgeBackGestureHandler com.android.systemui D updateCurrentUserResources: com.android.internal.R.dimen.navigation_bar_gesture_height:17105329
2024-06-24 18:33:55.932 686-686 EdgeBackGestureHandler com.android.systemui D updateCurrentUserResources: dm.density:1.1875
2024-06-24 18:33:55.932 686-686 EdgeBackGestureHandler com.android.systemui E updateCurrentUserResources: defaultGestureHeight:48.0
2024-06-24 18:33:55.998 686-686 EdgeBackGestureHandler com.android.systemui D updateCurrentUserResources: dm:DisplayMetrics{density=1.1875, width=1920, height=720, scaledDensity=1.1875, xdpi=320.0, ydpi=320.0}
2024-06-24 18:33:55.998 686-686 EdgeBackGestureHandler com.android.systemui D updateCurrentUserResources: com.android.internal.R.dimen.navigation_bar_gesture_height:17105329
2024-06-24 18:33:55.998 686-686 EdgeBackGestureHandler com.android.systemui D updateCurrentUserResources: dm.density:1.1875
2024-06-24 18:33:55.998 686-686 EdgeBackGestureHandler com.android.systemui E updateCurrentUserResources: defaultGestureHeight:48.0
2024-06-24 18:34:02.916 686-686 EdgeBackGestureHandler com.android.systemui D updateCurrentUserResources: dm:DisplayMetrics{density=1.375, width=1920, height=720, scaledDensity=1.375, xdpi=320.0, ydpi=320.0}
2024-06-24 18:34:02.916 686-686 EdgeBackGestureHandler com.android.systemui D updateCurrentUserResources: com.android.internal.R.dimen.navigation_bar_gesture_height:17105329
2024-06-24 18:34:02.917 686-686 EdgeBackGestureHandler com.android.systemui D updateCurrentUserResources: dm.density:1.375
2024-06-24 18:34:02.917 686-686 EdgeBackGestureHandler com.android.systemui E updateCurrentUserResources: defaultGestureHeight:0.0
2024-06-24 18:34:02.959 686-686 EdgeBackGestureHandler com.android.systemui D updateCurrentUserResources: dm:DisplayMetrics{density=1.375, width=1920, height=720, scaledDensity=1.375, xdpi=320.0, ydpi=320.0}
2024-06-24 18:34:02.959 686-686 EdgeBackGestureHandler com.android.systemui D updateCurrentUserResources: com.android.internal.R.dimen.navigation_bar_gesture_height:17105329
2024-06-24 18:34:02.959 686-686 EdgeBackGestureHandler com.android.systemui D updateCurrentUserResources: dm.density:1.375
2024-06-24 18:34:02.959 686-686 EdgeBackGestureHandler com.android.systemui E updateCurrentUserResources: defaultGestureHeight:0.0
com.android.internal.R.dimen.navigation_bar_height的值为0
4.解决:
在frameworks\base\core\res\res添加文件夹:
最小宽度sw这个是Android默认的,
一般应该是这样计算(在网上也能搜索到)
adb shell wm size 得到分辨率为 1920*720
adb shell wm density 得到密度为 160
那么sw = 160 * 小的size / density = 160x720/240 = 720
frameworks/base/core/res/res/values-sw400dp/
frameworks/base/core/res/res/values-sw460dp/
frameworks/base/core/res/res/values-sw520dp/
我的机器dm.densityDpi为180,190,220,252,284,在160和190正常
所以添加以上三个,在文件夹中添加dimens.xml文件:
<resources><!-- Height of the bottom navigation / system bar. --><dimen name="navigation_bar_height">64dp</dimen><!-- Height of the bottom navigation bar in landscape; oftenthe same as @dimen/navigation_bar_height --><dimen name="navigation_bar_height_landscape">64dp</dimen></resources>
navigation_bar_height*dm.density
180的值为:48dp
190的值为:56dp
220的值为:64dp
252的值为:72dp
284的值为:80dp
相关文章:

Android 11.0 修改系统显示大小导航栏消失
Android 11.0 修改系统显示大小导航栏消失 1.显示大小设置为大时,导航栏图标不显示。 设置为大,较大,最大时,导航栏图标不显示。 2.开始怀疑是导航栏被隐藏了,各种折腾无效。 3.发现: frameworks/base/pa…...

RocketMQ源码学习笔记:Producer启动流程
这是本人学习的总结,主要学习资料如下 马士兵教育rocketMq官方文档 目录 1、Overview1.1、创建MQClientInstance1.1.1、检查1.1.1、MQClientInstance的ID 1.2、MQClientInstance.start() 1、Overview 这是发送信息的代码样例, DefaultMQProducer produ…...
Node.js 和浏览器环境中都使用 WebSocket
使用WebSocket为什么不适配双端 浏览器环境本身就支持 WebSocket,直接使用 JavaScript 内置的 WebSocket 对象来建立连接。 Node中本身并没有内置 WebSocket 协议的支持,所以需要使用第三方库 ws来实现 WebSocket 功能。 一. 使用跨平台 WebSocket 库 …...

css美化滚动条样式
效果展示 实现 滚动条宽,高度 /* 整体滚动条 */ ::-webkit-scrollbar {width: 10px; }/* 滚动条轨道 */ ::-webkit-scrollbar-track {background-color: #ffffff;border-radius: 6px; }/* 滚动条滑块 */ ::-webkit-scrollbar-thumb {background-color: #888;borde…...
由浅入深,走进深度学习(补充篇:转置卷积和FCN)
本期内容是针对神经网络层结构的一个补充,主要内容是:转置卷积和全连接卷积网络 相关内容: 由浅入深,走进深度学习(2)_卷积层-CSDN博客 由浅入深,走进深度学习(补充篇:…...

Linux基础篇——目录结构
基本介绍 Linux的文件系统是采用级层式的树状目录结构,在此结构中的最上层是根目录"/",然后在根目录下再创建其他的目录 在Linux中,有一句经典的话:在Linux世界里,一切皆文件 Linux中根目录下的目录 具体的…...
星际编码:Swifter.Json,.NET宇宙中的数据处理新星
概述 在数字化的星辰大海中,数据是宇宙的通用语言。在.NET这一广袤的星系中,JSON作为信息交换的媒介,扮演着至关重要的角色。今天,我们要探索的是一颗新星——Swifter.Json,一个功能全面且性能卓越的JSON序列化和反序列…...

python 压缩数据
requests 是 Python 中一个非常流行的 HTTP 库,用于发送各种 HTTP 请求。下面是一个使用 requests 库发送简单 GET 请求和 POST 请求的示例: 首先,确保你已经安装了 requests 库。如果还没有安装,可以使用 pip 进行安装ÿ…...

nacos在k8s上的集群安装实践
目录 概述实践nfs安装使用 k8s持久化nacos安装创建角色部署数据库执行数据库初始化语句部署nacos ingress效果展示问题修复 结束 概述 本文主要对 nacos 在k8s上的集群安装 进行说明与实践。主要版本信息,k8s: 1.27.x,nacos: 2.0.3。运行环境为 centos 7…...

数据结构—判断题
1.数据的逻辑结构说明数据元素之间的顺序关系,它依赖于计算机的存储结构。 答案:错误 2.(neuDS)在顺序表中逻辑上相邻的元素,其对应的物理位置也是相邻的。 答案:正确 3.若一个栈的输入序列为{1, 2, 3, 4, 5},则不…...
树莓派挂载的移动硬盘badblocks坏道屏蔽,以这个为准
!!!use 这里要设置块大小和磁盘相同 badblocks -b 4096 -s -c 512 -v -o /a/2/bads4.txt /dev/sda5 检测完重新检测跳过之前的记录 badblocks -i /a/2/bads4.txt -b 4096 -s -c 512 -v -o /a/2/bads5.txt /dev/sda5 可以查看磁盘具体block总数和大小 sudo dumpe2fs /dev/sda5 …...

Unity开箱即用的UGUI面板的拖拽移动功能
文章目录 👉一、背景👉二、效果图👉三、原理👉四、核心代码👉五,总结 👉一、背景 之前做PC项目时常常有面板拖拽移动的需求,今天总结封装一下,做成一个随时随地可复用的…...

春秋云境:CVE-2022-25411[漏洞复现]
根据题目提示和CNNVD优先寻找后台管理地址 靶机启动后,使用AWVS进行扫描查看网站结构 在这里可以看到后台管理的登录地址:/admin/,根据题目提示可知是弱口令 尝试admin、123456、admin666、admin123、admin888...等等常见弱口令 正确的账户…...

java基础知识点全集
JAVA的所有知识点 一、基础的数组、数据类型、输入输出二、类与对象1. 三大特征(1) 封装(2)继承(3)多态 2. 类的实例化(1) 类通过NEW来创建(2) 类的继承&…...

如何完成域名解析验证
一:什么是DNS解析: DNS解析是互联网上将人类可读的域名(如www.example.com)转换为计算机可识别的IP地址(如192.0.2.1)的过程,大致遵循以下步骤: 查询本地缓存:当用户尝…...
2024年6月个人工作生活总结
title: 2024年6月个人工作生活总结 urlname: code-for-2024-06 tags: 代码积累知识总结 categories:我的程序代码 date: 2024-06-30 00:00:00 photos:gallery/tech/c2.jpg 本文为 2024年6月工作生活总结。 研发编码 编码和注释 因某些需要,重拾了2019年的工程代码…...

Json与Java类
简介 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。JSON数据由键值对构成,并以易于阅读的文本形式展现,支持数组、对象、字符串、数字、布尔值…...

动手学深度学习(Pytorch版)代码实践 -计算机视觉-39实战Kaggle比赛:狗的品种识别(ImageNet Dogs)
39实战Kaggle比赛:狗的品种识别(ImageNet Dogs) 比赛链接:Dog Breed Identification | Kaggle 1.导入包 import torch from torch import nn import collections import math import os import shutil import torchvision from…...
在Linux系统中挂载硬盘
目录 1. 查看硬盘信息 2. 分区硬盘(如果硬盘没有分区) 3. 格式化分区 4. 创建挂载点 5. 挂载分区 6. 验证挂载 7.设置开机自动挂载(可选) 1. 查看硬盘信息 lsblk 这个命令会列出所有的块设备,包括硬盘 2.…...

安卓短视频去水印v1.7 简洁好用
各大平台视频无水印提取,登录即永久会员! 无水印提取,图片无水印提取 视频旋转,倒放,转gif等功能。 链接:https://pan.baidu.com/s/1UgO4V16ZM34tG5uDog74Pg?pwdcn0u 提取码:cn0u...

高等数学(下)题型笔记(八)空间解析几何与向量代数
目录 0 前言 1 向量的点乘 1.1 基本公式 1.2 例题 2 向量的叉乘 2.1 基础知识 2.2 例题 3 空间平面方程 3.1 基础知识 3.2 例题 4 空间直线方程 4.1 基础知识 4.2 例题 5 旋转曲面及其方程 5.1 基础知识 5.2 例题 6 空间曲面的法线与切平面 6.1 基础知识 6.2…...
Java入门学习详细版(一)
大家好,Java 学习是一个系统学习的过程,核心原则就是“理论 实践 坚持”,并且需循序渐进,不可过于着急,本篇文章推出的这份详细入门学习资料将带大家从零基础开始,逐步掌握 Java 的核心概念和编程技能。 …...
Caliper 配置文件解析:config.yaml
Caliper 是一个区块链性能基准测试工具,用于评估不同区块链平台的性能。下面我将详细解释你提供的 fisco-bcos.json 文件结构,并说明它与 config.yaml 文件的关系。 fisco-bcos.json 文件解析 这个文件是针对 FISCO-BCOS 区块链网络的 Caliper 配置文件,主要包含以下几个部…...

处理vxe-table 表尾数据是单独一个接口,表格tableData数据更新后,需要点击两下,表尾才是正确的
修改bug思路: 分别把 tabledata 和 表尾相关数据 console.log() 发现 更新数据先后顺序不对 settimeout延迟查询表格接口 ——测试可行 升级↑:async await 等接口返回后再开始下一个接口查询 ________________________________________________________…...

三分算法与DeepSeek辅助证明是单峰函数
前置 单峰函数有唯一的最大值,最大值左侧的数值严格单调递增,最大值右侧的数值严格单调递减。 单谷函数有唯一的最小值,最小值左侧的数值严格单调递减,最小值右侧的数值严格单调递增。 三分的本质 三分和二分一样都是通过不断缩…...
WebRTC从入门到实践 - 零基础教程
WebRTC从入门到实践 - 零基础教程 目录 WebRTC简介 基础概念 工作原理 开发环境搭建 基础实践 三个实战案例 常见问题解答 1. WebRTC简介 1.1 什么是WebRTC? WebRTC(Web Real-Time Communication)是一个支持网页浏览器进行实时语音…...

【LeetCode】算法详解#6 ---除自身以外数组的乘积
1.题目介绍 给定一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法,且在 O…...

【C++】纯虚函数类外可以写实现吗?
1. 答案 先说答案,可以。 2.代码测试 .h头文件 #include <iostream> #include <string>// 抽象基类 class AbstractBase { public:AbstractBase() default;virtual ~AbstractBase() default; // 默认析构函数public:virtual int PureVirtualFunct…...
xmind转换为markdown
文章目录 解锁思维导图新姿势:将XMind转为结构化Markdown 一、认识Xmind结构二、核心转换流程详解1.解压XMind文件(ZIP处理)2.解析JSON数据结构3:递归转换树形结构4:Markdown层级生成逻辑 三、完整代码 解锁思维导图新…...

yaml读取写入常见错误 (‘cannot represent an object‘, 117)
错误一:yaml.representer.RepresenterError: (‘cannot represent an object’, 117) 出现这个问题一直没找到原因,后面把yaml.safe_dump直接替换成yaml.dump,确实能保存,但出现乱码: 放弃yaml.dump,又切…...