通常的做法是這樣的:
private static boolean isStatusbarVisible(Activity activity) { int uiOptions = activity.getWindow().getDecorView().getSystemUiVisibility(); boolean isStatusbarHide = ((uiOptions | View.SYSTEM_UI_FLAG_FULLSCREEN) == uiOptions); return !isStatusbarHide; } public static void hideStatusBar(Activity activity) { if (isStatusbarVisible(activity)) { int uiOptions = activity.getWindow().getDecorView().getSystemUiVisibility(); uiOptions |= View.SYSTEM_UI_FLAG_FULLSCREEN; activity.getWindow().getDecorView().setSystemUiVisibility(uiOptions); } }
此方法大多數情況都能奏效,但是遇到Drawerlayout就歇菜了。目前還沒有找到解決辦法。