Android沉浸式状态栏和手机虚拟按钮不兼容冲突的问题
解决办法:在设置沉浸式代码的地方,注释掉两行代码
if (Build.VERSION.SDK_INT >= 21) {
View decorView = getWindow().getDecorView();
int option = View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
//注释掉这行代码
//View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_STABLE;
decorView.setSystemUiVisibility(option);
//设置导航栏(顶部和底部)颜色为透明,注释掉这行代码
//getWindow().setNavigationBarColor(Color.TRANSPARENT);
//设置通知栏颜色为透明
getWindow().setStatusBarColor(Color.TRANSPARENT);
}
//隐藏导航栏
ActionBar actionBar = getSupportActionBar();
if (actionBar != null) {
actionBar.hide();
}
并且在style文件中设置这行代码,如图
<item name="android:windowTranslucentNavigation">false</item>

完美解决有虚拟按键时,底部按钮被遮挡的情况
