我正在创建一个应用程序,当您按下某个按钮时会弹出一个警告对话框.状态栏需要隐藏,所以我的活动中有一个方法:
private void hideStatusBar(){
if (Build.VERSION.SDK_INT < 16){
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
}
else {
View decorView = getWindow().getDecorView();
int uiOptions = View.SYSTEM_UI_FLAG_FULLSCREEN;
decorView.setSystemUiVisibility(uiOptions);
}
}
我在activity的onCreate方法中调用此方法,并且它会正常工作,直到弹出警告对话框.显示警告对话框后,状态栏将立即返回.我尝试了以下方法:
alertDialog.show();
hideStatusBar();
哪个没用.然后我为我的活动覆盖了onWindowFocusChanged方法:
public void onWindowFocusChanged(boolean hasFocus) {
super.onWindowFocusChanged(hasFocus);
hideStatusBar();
}
这使状态栏的背景透明,但仍然不隐藏它.有没有办法在显示警告对话框时隐藏状态栏?