@RequiresApi(api = Build.VERSION_CODES.KITKAT)
protected void hideBottomUIMenu() {
//隐藏虚拟按键,并且全屏
if (Build.VERSION.SDK_INT < 19) { // lower api
View v = this.getWindow().getDecorView();
v.setSystemUiVisibility(View.GONE);
int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_FULLSCREEN
| View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY;
v.setSystemUiVisibility(uiOptions);
} else {
//for new api versions.
View decorView = getWindow().getDecorView();
int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_FULLSCREEN
| View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY;
decorView.setSystemUiVisibility(uiOptions);
}
}
隐藏虚拟按键后手势下拉会出现状态栏和虚拟按键,过几秒又会自动隐藏
初始化时调用,onResume调用,或有其他手势操作后也需要调用此方法重新隐藏状态栏
@Override public void initializeComposition() { requestWindowFeature(Window.FEATURE_NO_TITLE);
hideBottomUIMenu();
setContentView(R.layout.main_activity);
}
@Override
protected void onResume() {
hideBottomUIMenu();
super.onResume();
}
本文介绍了一个在Android应用中隐藏底部虚拟按键的方法,并提供了详细的代码实现。适用于不同API版本的设备,同时介绍了如何在Activity初始化及恢复时保持隐藏状态。
2255

被折叠的 条评论
为什么被折叠?



