项目在华为手机上运行出现bug:如果打开App的时候华为的虚拟底部导航栏存在,则打开的app虚拟导航栏一直存在,点击隐藏虽然导航栏的按钮会隐藏,但是会留下黑色空白区域,无法隐藏,观察别的app都没此现象,所以查了很多资料
解决方案一:
说是在布局富容器中添加一句话
android:fitssystemWindows=”true”
方案二:
//控制底部虚拟键盘
getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
getWindow().getDecorView().setSystemUiVisibility(
View.SYSTEM_UI_FLAG_LAYOUT_STABLE
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_HIDE_NAVIGATION // hide nav bar
// | View.SYSTEM_UI_FLAG_FULLSCREEN // hide status bar
| View.SYSTEM_UI_FLAG_IMMERSIVE);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
可能可以解决一部分的适配问题 可是无法解决我的问题,最后看了一篇简单的文章说到他的问题是因为使用第三方的沉浸式状态栏导致的,发现我也用了,隐藏之后 改用代码做沉浸式状态栏
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
解决掉此问题 感谢tt5267621的文章分享思路