最近在写自己的小东西的时候,遇到了一个Bug,就是沉浸式转态栏与华为虚拟按键的冲突的问题。
先看一下出现问题的图

然后根据网上的一些办法 最多的就是告诉你,在布局文件加这个2个属性

  android:fitsSystemWindows="true"android:clipToPadding="true"

这个是我的布局

<?xml version="1.0" encoding="utf-8"?>
<com.zhy.autolayout.AutoLinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:fitsSystemWindows="true"android:clipToPadding="true"android:layout_height="match_parent"android:orientation="vertical"><FrameLayoutandroid:id="@+id/layFrame"android:layout_width="match_parent"android:layout_height="0dp"android:layout_weight="1" /><com.ashokvarma.bottomnavigation.BottomNavigationBarandroid:id="@+id/bottom_navigation_bar"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_gravity="bottom" />
</com.zhy.autolayout.AutoLinearLayout>

然后大家看一下效果 =_=! 虚拟按键是是跑到最下面了,我那个沉浸式状态栏是怎么回事??还有那个虚拟按键居然是透明的,而且那么丑

然后网上又有人说,把XML里面的两个属性去掉,还有把那个沉浸式状态栏的属性也去掉

    android:fitsSystemWindows="true"android:clipToPadding="true"

这句也要注释掉
// activity.getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION); 去掉这句 防止沉浸式状态栏与虚拟按键冲突

  if (Build.VERSION.SDK_INT < Build.VERSION_CODES.KITKAT) {return this;} else {mToolbar.setPadding(0, SystemView.getStatusBarHeight(activity) >> 1, 0, 0);}if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {activity.getWindow().addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);activity.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);//  activity.getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);  去掉这句 防止沉浸式状态栏与虚拟按键冲突} else {activity.getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);}

看看效果

完美处理!

至于我的沉浸式状态栏会变色,是根据Tablayout来设置的

Android 沉浸式状态栏与华为虚拟按键的冲突处理相关推荐

  1. Android 解决沉浸式状态栏和华为虚拟按键冲突

    对于现在的 App 来说,布局页面基本都会用到沉浸式状态栏,单纯的沉浸式状态栏很容易解决,但是在华为手机上存在一个底部虚拟按键的问题,会导致页面底部和顶部出现很大的问题,比如页面底部导航栏被按键覆盖, ...

  2. android华为隐藏底部虚拟按键,沉浸式状态栏/华为虚拟按键隐藏

    19版本以上Android可以自己实现沉浸式状态栏的设置 1.创建values-v21文件夹(为了匹配低版本) 在style文件中设置: 设置了这两个属性状态栏就能设置为透明的.但是需要注意的是,这个 ...

  3. android 沉浸式开源库,Android沉浸式状态栏

    关于Android沉浸式状态栏, 网上已经有很多开源库, 虽然开源库可以解决某些特定布局下的沉浸式状态栏问题, 但是遇到比较特殊的布局就无法解决了, 所以了解一下沉浸式状态栏如何实现是有必要的. 无论 ...

  4. 使用主题Theme实现Android沉浸式状态栏

    使用主题Theme实现Android沉浸式状态栏 很早的时候,通过主题设置activity沉浸式,发现坑很多,就开始使用各种StatusBarUtils,放弃了主题修改沉浸式这种方式,不知道大家有没有 ...

  5. 高大上的Android沉浸式状态栏?

    背景 之前做过Android沉浸式状态栏的相关需求,但是一直忙于工作,没时间系统的整理下沉浸式相关的知识,所以今天抽出时间,写一篇 Android沉浸式状态栏的文章. 何为沉浸式 沉浸式就是要给用户提 ...

  6. Android 沉浸式状态栏 实现方式二 ( 更简单 )

    以前写过一个沉浸式状态栏 的实现方式 Android 沉浸式状态栏 实现方式一 现在有个更为简单的实现方式 . 相关链接 http://www.apkbus.com/forum.php?mod=vie ...

  7. android 5.0状态栏下载地址,Android沉浸式状态栏(5.0以上系统)

    Android沉浸式状态栏(5.0以上系统) 沉浸式状态栏可以分为两种: 1.直接给状态栏设置颜色 (如下图:) 这里写图片描述 java代码形式: if (Build.VERSION.SDK_INT ...

  8. Android 沉浸式状态栏完美解决方案

    Android 沉浸式状态栏完美解决方案 参考文章: (1)Android 沉浸式状态栏完美解决方案 (2)https://www.cnblogs.com/dingxiansen/p/9929828. ...

  9. Android沉浸式状态栏工具类,一句代码轻松搞定

    Android沉浸式状态栏工具类,一句代码轻松搞定 博客原文及源码地址:http://jaeger.itscoder.com/android/2016/03/27/statusbar-util.htm ...

最新文章

  1. 深度解析:特斯拉的工厂为什么建造得这么快?
  2. Zookeeper集群 + Kafka集群 + KafkaOffsetMonitor 监控
  3. Redis集群CentOS系统配置企业级数据备份方案以及数据恢复的操作(在开启AOF功能下恢复冷备RDB文件数据,保持AOF和RDB双开情况下恢复数据及错误的数据恢复步骤详解)
  4. 科大星云诗社动态20210303
  5. NLP jieba分词源码解析
  6. MySQL索引介绍,普通索引,全文索引,空间索引,多列索引使用原则,建立索引常用的规则
  7. 怎样让你的安卓手机瞬间变Firefox os 畅玩firefox os 应用
  8. 2020阿里云双12-企业飞天会员年终盛典全攻略
  9. java数组 规定数量_java – 如何在数组中保持不同事物的数量?
  10. python内置函数len_len是python内置函数吗
  11. disk磁盘管理与Linux驱动编写
  12. RubyOnRails开发知识链接汇总
  13. 破解还原卡的方法总结!! - Kevins的天空 - CSDNBlog
  14. 锐捷客户端的默认网关跟ipv4的网关不一样
  15. 微积分英文书籍第八版 CALCULUS eight edition
  16. mysql 查看 脏页_MySQL:刷脏页
  17. Redis统计用户访问量
  18. 重庆大学计算机学院郭松涛,C.-C.Jay Kuo教授访问重大计算机学院
  19. 什么是责任心?如何提高责任心?HR人才测评
  20. phpspreadsheet 中文文档(七)技巧和诀窍

热门文章

  1. PS相片添加边框和排版
  2. 讲真的,我后悔来到北大青鸟重庆大学城校区了......
  3. 2021年腾讯服务器维护,2019年到2021年40款停服游戏汇总,仅腾讯就有30余款
  4. (超好)xp系统遇到问题解决方法总结(提供了一个解决问题库)
  5. 父html向子html传递参数,子组件向父组件传值
  6. 抖音删除作品怎么恢复?四川子苗教育
  7. 内部类大展身手——— 静态内部类实现单例模式
  8. 斐波那契数列的递推与递归求法
  9. 宜信区块链|案例解读宜信如何运用区块链双链技术重构供应链金融服务
  10. VC中实现历史记录的全面清除