华为的一些手机的屏幕上的虚拟按键是可以显示或者隐藏的,因此在布局适配的时候就要考虑到这个问题,要不然当虚拟按键被隐藏后界面的布局就会出现问题,下面给出一种解决方法,(原文来自:安卓适配碰到的一些问题)

因为虚拟按键的打开会涉及到view的重绘,因此可以重写根layout中的onLayout方法来实现。假设根layout是FrameLayout

public class RootLayout extends FrameLayout{public RootLayout(Context context,AttributeSet attrs){super(context,attrs);}@Overrideprotected void onLayout(boolean change,int left,int top,int right,int bottom){super.onLayout(change,left,top,right,bottom);int tempWindowHeight = Util.getWindowManager().getDefaultDisplay() - Util.getStatusBarHeight(getContext());//Util.windowHeight为事先缓存的高度if(tempWindowHeight != Util.windowHeight){Util.windowHeight = tempWindowHeight;Util.windowWidth = Util.getWindowManager().getDefaultDisplay().getWidth();}}
}

Android适配华为手机虚拟按键显示或隐藏相关推荐

  1. Android启动页,引导页适配华为手机(虚拟按键)显示问题

    前言 看到我这篇文章的同学肯定会质疑我开发的能力,我遇到的问题总是很奇怪,估计真的跟我的开发能力有关系~~~,最近公司的B端项目要上线了,UI妹子昨天给做了几张引导页与一张启动页,原来没有仔细观察过图 ...

  2. 解决华为手机虚拟按键遮挡页面底部tab栏的问题

    谷歌原生,华为之类的虚拟按键遮挡页面底部RadioButton之类的问题. if (AndroidWorkaround.checkDeviceHasNavigationBar(this)) { //适 ...

  3. 这是最简单解决Android适配之【虚拟按键遮挡布局】

    最近开发项目有个适配的小问题,在用android studio 开发程序的时候发现一个问题,虚拟按键会遮挡布局,在6.0.1的系统中虚拟按键会挡住布局,特别是华为手机和小米底部会有虚拟按键等,而在6. ...

  4. 在开发中沉侵式效果遇到类似华为手机虚拟按键一系列问题的解决

    最近刚做完公司一个项目,碰到几个小问题,自己在这里做点小笔记 项目中需求是要求沉侵式的效果,沉侵式的效果我就不多说了网上都有介绍,方法也有多种,但是可能会影响到其他的问题.这里我只能结合我项目中遇到的 ...

  5. 安卓 虚拟按键显示与隐藏适配

    这是我第一次写博客,写的不好希望大家多多包涵. 由于项目需要在5.0以上适配全屏显示的需求,遇到了一些底部虚拟键遮挡住底部UI的问题,所以特意加了底部高度来适配.之前做了一些处理感觉都是没那么全面,也 ...

  6. Android适配页面底部虚拟按键

    想全面了解解决方案不妨看下这两篇文章: https://blog.csdn.net/smileiam/article/details/69055963 https://blog.csdn.net/we ...

  7. Android适配页面底部虚拟按键,解决与软键盘冲突,AndroidBug5497Workaround

    想全面了解解决方案不妨看下这两篇文章: https://blog.csdn.net/smileiam/article/details/69055963 https://blog.csdn.net/we ...

  8. Android适配华为手机,华为Mate 10将适配Android P 更流畅体验

    作为国产大厂的华为,无论是在硬件配置还是软件支持方面,都可以说是拥有绝对的优势.每年的旗舰机型,不仅会搭载最强悍的硬件,系统方面也是会基于最新的安卓版本开发,为消费者带来最优的体验.目前最新的安卓系统 ...

  9. RN问题解决策略华为手机虚拟按键的问题解决

    如图键盘把输入框盖掉了,项目中使用的是,获取真实的键盘显示时的高度 react-native-extra-dimensions-android 解决方法: ExtraDimensionsModule. ...

最新文章

  1. Keras训练神经网络进行分类并使用GridSearchCV进行参数寻优
  2. linux 命令输出 保存到文件 日志记录
  3. jsoncontains mysql_Mysql5.7.9之后的JsonObject类型数据的匹配函数Json_Contains
  4. leetcode算法题--斐波那契数列
  5. [ASP.net]TreeView(1)(一次性递归所有节点)
  6. 快速排序算法C#实现
  7. java第七章多线程_第七章 多线程
  8. Pytorch:GAN生成对抗网络实现二次元人脸的生成
  9. ICIP2012 关于Saliency Map的文章
  10. java动态删除map元素报错_java map使用迭代器遍历时执行删除元素报空指针异常
  11. eclipse新建java项目_用eclipse创建Java项目(以一个初学者的角度全面教学)
  12. 带照片小学计算机管理员简介,如何做一个出色的学校网络管理员
  13. MATLAB与信号处理
  14. 创建虚拟机并加载镜像文件
  15. 【复盘】如何打造自己的研发能力
  16. formatter格式说明
  17. 马云 996 一文的诡辩与话术:大家是怎么被洗脑还帮人数钱的
  18. 第七章软件结构的健壮性——健壮性与正确性
  19. 下载keep运动软件_keep运动软件下载
  20. 2017总结与2018规划

热门文章

  1. T1 载波速率 为什么是1.544Mbps?
  2. 计算机论文审题,计算机毕业论文写作指导
  3. 宝宝吃药过敏了怎么办,三步正确处理宝宝药物过敏
  4. 元宇宙精华主题汇总(更新至20220901)
  5. 苹果内存其他怎么清理_“设置”中的“其他”占很多内存,怎么清理?
  6. Vue项目中监听全屏事件,实现全屏功能和按esc退出全屏(解决全屏踩坑难题)
  7. idea 导出jar包 及 解决缺少jar包依赖问题
  8. python(3.9.7)的字典(全面、细致)
  9. JSP页面tdl自定义标签的做法
  10. 精辟:一个小公司老板的日常管理