我有一個包含切換全屏功能的應用程序。
使用以下代碼切換全屏效果確實成功。
狀態欄隱藏在全屏下,但在Android中按下菜單鍵時顯示狀態欄
if (tofull) {
if (Build.VERSION.SDK_INT < 16) {
Log.i("toggleFullScreen", "API<16");
getWindow().setFlags(
WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
} else {
Log.i("toggleFullScreen", "API>=16");
View decorView = getWindow().getDecorView();
// Hide the status bar.
// int uiOptions = View.SYSTEM_UI_FLAG_FULLSCREEN;
int uiOptions = View.SYSTEM_UI_FLAG_FULLSCREEN
| View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY;
decorView.setSystemUiVisibility(uiOptions);
}
} else {
if (Build.VERSION.SDK_INT < 16) {
Log.i("toggleFullScreen", "API<16");
getWindow().clearFlags(
WindowManager.LayoutParams.FLAG_FULLSCREEN);
} else {
Log.i("toggleFullScreen", "API>=16");
View decorView = getWindow().getDecorView();
// Hide the status bar.
int uiOptions = View.SYSTEM_UI_FLAG_VISIBLE;
decorView.setSystemUiVisibility(uiOptions);
}
}
它可以隱藏狀態欄後切換到全屏模式。
然而,當我按下硬件菜單鍵按鈕(我有一個選項菜單,將按下菜單鍵後顯示出來),該狀態欄出來。而狀態欄不會再隱藏。
這個問題存在的可能原因是什麼?
任何人都可以解決它(使狀態欄自動再次隱藏)?