1. 程式人生 > >如何隱藏Android4 0及以上版本的ActionBar NotificationBar StatusBar Syst

如何隱藏Android4 0及以上版本的ActionBar NotificationBar StatusBar Syst

               

1.ActionBar:

<activityandroid:name="Demo"android:label="@string/app_name"android:theme="@android:style/Theme.NoTitleBar.Fullscreen"><intent-filter><actionandroid:name="android.intent.action.MAIN"/><categoryandroid:name="android.intent.category.LAUNCHER"/></intent-filter></activity
>

2.TitleBar隱藏:requestWindowFeature(Window.FEATURE_NO_TITLE);或者android:theme="@android:style/Theme.Black.NoTitleBar顯示:
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);

3.NotificationBar、StatusBar、SystemBar

Dim的話可以:

getWindow().getDecorView().setSystemUiVisibility  (View.SYSTEM_UI_FLAG_LOW_PROFILE);

隱藏的話可以(不好使,哈哈):

getWindow().getDecorView().setSystemUiVisibility  (View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);

那怎麼玩呢?用狠招吧,哈哈:

命令列方式:

直接用程序號殺,不加service那個shell的話,一會SystemBar會自啟動。

# kill com.android.systemui

# service call activity 79 s16 com.android.systemui

如果想啟動SystemBar:

# am startservice -n com.android.systemui/.SystemUIService

程式碼方式:

要root啊,

Process proc = Runtime.getRuntime().exec(new String[]{"su","-c","service call activity 79 s16 com.android.systemui"});proc.waitFor();

Process proc = Runtime.getRuntime().exec(new String[]{"am","startservice","-n","com.android.systemui/.SystemUIService"});proc.waitFor();

參考連結如下: