如何隐藏系统UI(状态栏)而不隐藏导航栏?

时间:2014-11-20 04:37:58

标签: android uinavigationcontroller

我想在我的应用程序中隐藏状态栏(Syste UI),我想始终显示导航栏。 从android开发者文档我得到这个代码来全屏。

int uiOptions = View.SYSTEM_UI_FLAG_FULLSCREEN;
decorView.setSystemUiVisibility(uiOptions);

它会隐藏导航和状态栏。

SYSTEM_UI_FLAG_HIDE_NAVIGATION,此标志隐藏了导航栏。但我想只隐藏状态栏和显示导航栏..请告诉我这样做需要什么标志。

编辑:我想在Kindle标签(6英寸标签)中执行此操作。 View.SYSTEM_UI_FLAG_FULLSCREEN此标记隐藏了两个条形。但我想只隐藏状态栏..始终显示导航栏。

2 个答案:

答案 0 :(得分:0)

enter image description here将以下代码放在清单文件中以供该特定活动使用:

android:theme="@style/Theme.AppCompat.Light.NoActionBar.FullScreen"

OR

android:theme="@android:style/Theme.NoTitleBar"

Style.xml

<style name="AppBaseTheme" parent="Theme.AppCompat.Light">
        <!--
            Theme customizations available in newer API levels can go in
            res/values-vXX/styles.xml, while customizations related to
            backward-compatibility can go here.
        -->
    </style>

     <style name="Theme.AppCompat.Light.NoActionBar.FullScreen" parent="@style/Theme.AppCompat.Light">
    <item name="android:windowNoTitle">true</item>
    <item name="windowActionBar">false</item>
    <item name="android:windowFullscreen">true</item>
    <item name="android:windowContentOverlay">@null</item>
    </style>

答案 1 :(得分:0)

请遵循此代码,

public class ActivityName extends MyActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);     
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
        WindowManager.LayoutParams.FLAG_FULLSCREEN);
    setContentView(R.layout.main);
}
}