Android NavigationBar问题处理的方法
如图,现在全面屏手机下面的 按钮在屏幕上,如果做沉浸式的话,下面的菜单会沉入NavigationBar下方,造成重叠。
样品机为华为.png
下面是解决办法:
getWindow().getDecorView().findViewById(android.R.id.content).setPadding(0, 0, 0, getNavigationBarHeight()); public int getNavigationBarHeight() { boolean hasMenuKey = ViewConfiguration.get(this).hasPermanentMenuKey(); boolean hasBackKey = KeyCharacterMap.deviceHasKey(KeyEvent.KEYCODE_BACK); if (!hasMenuKey && !hasBackKey) { Resources resources = getResources(); int resourceId = resources.getIdentifier("navigation_bar_height", "dimen", "android"); //获取NavigationBar的高度 int height = resources.getDimensionPixelSize(resourceId); return height; } else { return 0; } }
由于工作原因,暂时做简单记录,有空会进行深入分析!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
Android BottomNavigationBar底部导航控制器使用方法详解
最近Google在自己推出的Material design中增加了Bottom Navigation导航控制.Android一直没有官方的导航控制器,自己实现确实是五花八门,有了这个规定之后,就类似苹果的底部Toolbar,以后我们的APP就会有一致的风格,先看一张效果: 这是官方在Material design中给出一张图,确实很不错. 1.BottomNavigationBar的下载地址 https://github.com/Ashok-Varma/BottomNavigation 2.使用
-
Android判断NavigationBar是否显示的方法(获取屏幕真实的高度)
有些时候,我们需要知道当前手机上是否显示了NavigationBar,也就是屏幕底部的虚拟按键. 比如截屏的时候,要获取屏幕的高度,必须包括NavigationBar的高度. 试过网上的多种方法,但是对那种可以通过手势来显示/隐藏的NavigationBar没办法,最后终于找到了一个好办法,看代码: public boolean isNavigationBarShow(){ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_M
-
Android NavigationBar问题处理的方法
如图,现在全面屏手机下面的 按钮在屏幕上,如果做沉浸式的话,下面的菜单会沉入NavigationBar下方,造成重叠. 样品机为华为.png 下面是解决办法: getWindow().getDecorView().findViewById(android.R.id.content).setPadding(0, 0, 0, getNavigationBarHeight()); public int getNavigationBarHeight() { boolean hasMenuKey = Vi
-
Android webview实现拍照的方法
Android webview实现拍照的方法 1. html <div id="pnlVideo1"> <input type="hidden" name="imgNric1" id="imgNric1" /> <label id="nric" class="control-label labelfont" style="color:#888;fo
-
android针对json数据解析方法实例分析
本文实例讲述了android针对json数据解析方法.分享给大家供大家参考.具体如下: JSON的定义: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性.业内主流技术为其提供了完整的解决方案(有点类似于正则表达式 ,获得了当今大部分语言的支持),从而可以在不同平台间进行数据交换.JSON采用兼容性很高的文本格式,同时也具备类似于C语言体系的行为. – Json.org JSON Vs XML 1.JSON和XML的数据可读性基本相同 2.JSON和XML同样拥有丰富的解析手段 3.
-
Android实现定制桌面的方法
本文实例讲述了Android实现定制桌面的方法.分享给大家供大家参考.具体如下: launcher也就是我们的Home,可以简单地把它理解为一个简化的linux GUI.作为一个GUI它首先必须完成它最本分的功能,就是它必须能提供对所有应用程序(CATEGORY_LAUNCHER)的映射:不过作为一个 GUI,它除了做好本分之外还必须是符合大众审美的美女(wallpaper):另外还必须具有良好的交互性,没有良好的交互性就像你对一位美女殷勤了半天,她却直接对无视,那结果是比较糟糕的-- 所谓兵马
-
Android控件ListView使用方法详解
Android控件ListView使用方法介绍,具体如下 一.ListView的简单用法 首先新建一个ListViewTest项目,并让Android Studio自动创建好活动.然后修改activity_main.xml中的代码,如下: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/re
-
Android使用vcard文件的方法简单实例
本文实例讲述了Android使用vcard文件的方法.分享给大家供大家参考,具体如下: FileOutputStream os = null; try { os = VCardTest.this.openFileOutput("Android.vcf", MODE_PRIVATE); } catch (FileNotFoundException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } Output
-
详解Android中Intent的使用方法
一.Intent的用途 Intent主要有以下几种重要用途: 1. 启动Activity:可以将Intent对象传递给startActivity()方法或startActivityForResult()方法以启动一个Activity,该Intent对象包含了要启动的Activity的信息及其他必要的数据. 2. 启动Service:可以将Intent对象传递给startService()方法或bindService()方法以启动一个Service,该Intent对象包含了要启动的Service的
-
Android中断线程的处理方法
本文实例讲述了Android中断线程的处理方法.分享给大家供大家参考.具体方法如下: 我现在对一个用户注册的功能 1.用ProgressDialog将当前页面设成不可操作(保留返回键 退出ProgressDialog) 2.用一个线程clientThread执行数据的提交和返回 问题:考虑到ProgressDialog运行过程中,返回键的操作,应该终止clientThread的运行. 代码如下,感兴趣的朋友可以参考运行一下,以便得出更好的解决办法. 复制代码 代码如下: btn_register
-
Android实现Service重启的方法
本文实例讲述了Android实现Service重启的方法.分享给大家供大家参考.具体如下: 做APP的时候,我们可能需要一个后台服务一直在运行着,得用到Service组件. 但服务可能在如下情况被杀死: A.用户手动点击停止. B.采用第三方软件(比如360手机卫士)进行清理,当然这样子除了系统服务外,其他的进程肯定也会被杀死,除非跟手机厂商联系. 这时候可能需要重启该服务,上网看了半天,有提到用Timer.AlarmManager去实现间歇性的发送广播启动Service(注册的广播接收后,启动
随机推荐
- AngularJs实现聊天列表实时刷新功能
- MongoDB运行状态监控、性能分析工具mongostat详解
- 使用Python解析JSON数据的基本方法
- asp.net(c#)两种随机数的算法,可用抽考题
- PHP获取客户端真实IP地址的5种情况分析和实现代码
- Django中传递参数到URLconf的视图函数中的方法
- Mysql精粹系列(精粹)
- Shell脚本检查IP格式及mysql操作实例
- Python中在for循环中嵌套使用if和else语句的技巧
- 改造ctrl+alt+del(默认重启)为一个信息搜集脚本的脚本
- javascript实现 百度翻译 可折叠的分享按钮列表
- PHP图片上传类带图片显示
- javascript字符串拼接的效率问题
- Java中八种基本数据类型的默认值
- Linux命令详解之less命令
- ThinkPHP3.1新特性之多数据库操作更加完善
- Android线程的优先级设置方法技巧
- 浅谈pyqt5中信号与槽的认识
- rocketmq消费负载均衡--push消费详解
- pandas的排序和排名的具体使用