当前位置:操作系统 > 安卓/Android >>

如何隐藏Android4.0及以上版本的ActionBar、NotificationBar、StatusBar、SystemBar、TitleBar

1.ActionBar:

        <activity android:name="Demo"
                  android:label="@string/app_name"
                   android:theme="@android:style/Theme.NoTitleBar.Fullscreen" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android: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();

 

摘自 forlong401的专栏

补充:移动开发 , Android ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,