前言

正常情况下横竖屏旋转的时候导航栏也会跟着一起旋转,但是在Android R上面发现导航栏在横屏的时候是固定在右侧的,而不是旋转到底部。这个功能其实是Android 高版本特意修改的,为了是方便横屏玩游戏等场景的时候不小心误触到。我们先看看原本的界面图。

【竖屏界面】

【横屏界面】

一开始的时候我以为是在SystemUI里面控制的导航栏旋转界面切换,但是发现并不是这样,其实是跟
framework中的 R.bool.config_navBarCanMove 这个变量有关,具体代码修改很简单,如下:

diff --git a/frameworks/base/services/core/java/com/android/server/wm/DisplayPolicy.java b/frameworks/base/services/core/java/com/android/server/wm/DisplayPolicy.java
old mode 100644
new mode 100755
index 0d467c50aa1..0a7662dd8fc
--- a/frameworks/base/services/core/java/com/android/server/wm/DisplayPolicy.java
+++ b/frameworks/base/services/core/java/com/android/server/wm/DisplayPolicy.java
@@ -2895,9 +2895,10 @@ public class DisplayPolicy {void updateConfigurationAndScreenSizeDependentBehaviors() {final Resources res = getCurrentUserResources();
-        mNavigationBarCanMove =
-                mDisplayContent.mBaseDisplayWidth != mDisplayContent.mBaseDisplayHeight
-                        && res.getBoolean(R.bool.config_navBarCanMove);
+        //mNavigationBarCanMove =
+        //        mDisplayContent.mBaseDisplayWidth != mDisplayContent.mBaseDisplayHeight
+        //                && res.getBoolean(R.bool.config_navBarCanMove);
+        mNavigationBarCanMove = false;mDisplayContent.getDisplayRotation().updateUserDependentConfiguration(res);}

【修改后横屏界面】

Android 11.0 解决切换横屏时SystemUI导航栏固定在桌面右侧而不是底部的问题相关推荐

  1. Android 11.0 SystemUI导航栏固定在底部显示的修改

    目录 1.概述 2.SystemUI导航栏固定在底部显示的修改的相关代码

  2. android 11.0 开机动画横屏显示

    目录 1.概述 2.开机动画横屏显示的核心代码部分 3.开机动画横屏显示的核心代码部分分析以及实现功能

  3. Android 11.0 12.0Camera2 静音时拍照去掉快门声音

    目录 1.概述 2.Camera2静音拍照去掉快门声音核心代码 3.Camera2静音拍照去掉快门声音核心代码功能分析

  4. android 11.0 SystemUI导航栏 添加虚拟按键(一)

    1.概述 在11.0产品定制化中,SystemUI的相关功能需求需要为导航栏添加虚拟按键来实现某些功能,比如添加wifi,可以通过点击wifi跳转到wifi页面,日期可以弹出当前万年历功能,所以需要对 ...

  5. Android 11.0 支持exfat格式

    点滴积累,记录自己的成长. 最近系统要支持exfat格式,参考了大佬们的帖子之后,终于搞定了. 由于之前都是Android.mk,自己系统中使用的Android.bp,而且要求以模块的形式调用对应的k ...

  6. MTK Android 11.0:充电低电指示灯会被未读消息信号灯灭掉,无优先级控制。

    MTK Android 11.0:充电低电指示灯会被未读消息信号灯灭掉,无优先级控制: 1.电池充电.低电状态提示(红绿双色).(LIGHT_ID_BATTERY) 小于15%时: A 正在充电 亮红 ...

  7. Android 11.0 Settings源码分析 - 主界面加载

    Android 11.0 Settings源码分析 - 主界面加载 本篇主要记录AndroidR Settings源码主界面加载流程,方便后续工作调试其流程. Settings代码路径: packag ...

  8. Android 11.0 锁屏页面时钟显示样式

    一.需求分析 Android 11.0系统默认的锁屏时钟 年月日 显示的样式不符合需求,现在需要定制化.下图是系统默认的时间样式. 目标是改成这样: 二.核心代码路径 frameworks/base/ ...

  9. Android 8.0解决的OkHttp问题:A connection to xxx was leaked. Did you forget to close a response body?

    Android 8.0 解决OkHttp问题:A connection to xxx was leaked. Did you forget to close a response body? Andr ...

最新文章

  1. linux服务器LVS/DR模式+nfs
  2. 国内的IDC数据中心运营维护前景如何?
  3. asp.net代码审计起始篇之系统搭建
  4. 算法试题 - 找出字符流中第一个不重复的元素
  5. ON_COMMAND_RANGE用法
  6. A+B for Matrices 及 C++ transform的用法
  7. 【干货索引】阿里云大数据计算服务MaxCompute与生态系统的融合
  8. 【android错误】bitmap size exceeds 32bits
  9. ORACLE利用scn赚钱,在Oracle中增进SCN及案例介绍
  10. linux环境文件或者文件夹打包
  11. LTE-OA系统架构图
  12. vue实现pdf打印预览
  13. 基于WKT标准的空间参考系字符串及prj文件生成样例
  14. IE图标删不掉,桌面IE删了又有了
  15. 单片机电子密码锁C语言程序,以STC89C52单片机为核心的电子密码锁设计
  16. 2011年随笔记 5月30号以后的日志薄
  17. 什么是物联网AIoT?
  18. EDU教育邮箱有这么多学生福利,你确定不搞一个?
  19. java三元表达式必须返回_java – 三元运算符的右手表达式必须兼容...
  20. dom实现类似淘宝的星级评分

热门文章

  1. jfinal默认html,设置JFinal默认首页
  2. 前端与移动开发----webAPI----BOM介绍,定时器
  3. python出租车计费_python的基础程序——判断语句(以出租车计费为例)
  4. kaggle比赛前2%摸奖银牌总结
  5. css字太多了省略_纯CSS实现文字超过n行后省略功能
  6. 数据相似性的度量方法总结
  7. 一文读懂现代化的智能天线技术
  8. 面试中人力资源部常问的问题
  9. Megaupload存储服务计划2017回归 原用户数据将恢复
  10. spotlight全屏弹窗图片幻灯片插件