无法在Android 4.3 API 18中隐藏通知栏

时间:2013-08-23 07:04:17

标签: android android-notification-bar android-titlebar android-4.3-jelly-bean

4.3之前,

@android:style/Theme.Black.NoTitleBar  

 requestWindowFeature(Window.FEATURE_NO_TITLE);
 getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
 WindowManager.LayoutParams.FLAG_FULLSCREEN);`

完美地隐藏了通知栏。但是在4.3中虽然条形图没有显示使用此代码,但在顶部滑动带来了条

Sliding shows the screen. See that the bar overlapped 134. enter image description here

2 个答案:

答案 0 :(得分:2)

我发现没有简单的方法可以做到这一点。所以我使用了一点反射,它的工作正常。

Object service  = getSystemService("statusbar");
Class<?> statusbarManager = Class.forName("android.app.StatusBarManager");
Method collapse = statusbarManager.getMethod("collapsePanels");
collapse .setAccessible(true);
collapse .invoke(service);

不要忘记在清单中添加它。

<uses-permission android:name="android.permission.EXPAND_STATUS_BAR" />

答案 1 :(得分:0)

您是否尝试过使用Theme.Black.NoTitleBar.Fullscreen?