有隐藏导航栏的xml方法吗?

时间:2019-03-07 08:52:59

标签: android xml

要隐藏导航栏,android docs提供了以下解决方案:

   View decorView = getWindow().getDecorView();
   int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
                 | View.SYSTEM_UI_FLAG_FULLSCREEN;
   decorView.setSystemUiVisibility(uiOptions);

是否也有基于XML的方法来做到这一点?我在样式和Maninfest中尝试了以下方法:

  <activity
      android:name=".MainActivity"
      android:label="@string/title_activity_main"
      android:theme="@style/AppTheme.NoActionBar" />

使用

   <style name="AppTheme.NoActionBar">
       <item name="windowActionBar">false</item>
       <item name="windowNoTitle">true</item>
   </style>

但这似乎不起作用。

也许我可以在活动的XML中执行上述解决方案?

3 个答案:

答案 0 :(得分:2)

您可以使用

在styles.xml中覆盖基本应用程序主题
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <!-- Customize your theme here. -->
</style>

将此主题添加到清单中,例如

<application
        android:theme="@style/AppTheme">

答案 1 :(得分:0)

导航视图的set属性如下。

 android:visibility="gone"

 android:visibility="invisible"

不可见意味着您看不到布局,但是它在那里。

“消失”表示视图已消失,您无法通过触摸来访问它。

答案 2 :(得分:0)

 <com.google.android.material.navigation.NavigationView
    android:id="@+id/nav_view"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    android:fitsSystemWindows="true">

在xml文件中,这是Navigationview的代码

如果要通过编程方式设置可见性,而不是使用 喜欢

navigationview.setvisibility(View.INVIBLE);