这种方案不会保留底部虚拟导航按键。也不保留状态栏
/**
* 180115 隐藏 魅族、Nexus、华为等底部的虚拟导航按键,避免遮挡内容
*
* @param activity 需要隐藏底部导航按键的Activity
*/
public static void hideBottomUIMenu(Activity activity) {
//隐藏虚拟按键,并且全屏
if (Build.VERSION.SDK_INT < 19) { // lower api
View v = activity.getWindow().getDecorView();
v.setSystemUiVisibility(View.GONE);
} else if (Build.VERSION.SDK_INT >= 19) {
View decorView = activity.getWindow().getDecorView();
int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY | View
.SYSTEM_UI_FLAG_FULLSCREEN;
decorView.setSystemUiVisibility(uiOptions);
}
}
这种方案底部依旧会保留虚拟导航按键。但不保留状态栏
getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);