2016-05-19 299 views
1

我想隱藏導航欄(所有屏幕)在我的應用程序。下面的代碼隱藏導航欄。但如果我再次點擊編輯文本導航欄出現。如何隱藏?隱藏導航欄

@Override 
protected void onCreate(Bundle savedInstanceState) { 
View decorView = getWindow().getDecorView(); 
    decorView.setOnSystemUiVisibilityChangeListener(new View.OnSystemUiVisibilityChangeListener() { 
     @Override 
     public void onSystemUiVisibilityChange(int visibility) { 
      if ((visibility & View.SYSTEM_UI_FLAG_FULLSCREEN) == 0) { 
       decorView.setSystemUiVisibility(
         View.SYSTEM_UI_FLAG_LAYOUT_STABLE 
           | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION 
           | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN 
           | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION 
           | View.SYSTEM_UI_FLAG_FULLSCREEN 
           | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY); 
      } 
     } 
    }); 
} 

回答

0

您可以通過以下清單中的代碼行的應用程序標記

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

你試圖做什麼是屏幕的沉浸式模式。顯示用戶交互導航欄的位置。

-1

從我的問題可以理解,你希望你的應用程序刪除`ActionBar'並完全全屏。如果是這樣的話,你會想要做兩個特別的事情,這取決於你的應用程序的目標版本:

如果> 4.1:

View decorView = getWindow().getDecorView(); 
// Hide the status bar 
int uiOptions = View.SYSTEM_UI_FLAG_FULLSCREEN; 
decorView.setSystemUiVisibility(uiOptions); 
// Remember that you should never show the action bar if the 
// status bar is hidden, so hide that too if necessary. 
ActionBar actionBar = getActionBar(); 
actionBar.hide(); 

不然,如果< 4.1:

public class MainActivity extends Activity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     // If the Android version is lower than Jellybean, use this call to hide 
     // the status bar 
     if (Build.VERSION.SDK_INT < 16) { 
      getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
       WindowManager.LayoutParams.FLAG_FULLSCREEN); 
     } 
     setContentView(R.layout.activity_main); 
    } 
} 

請讓我知道這是否解決了您的問題。如果沒有,我們可以確定究竟是哪裏出了問題,並從那裏拿走。我希望這有幫助。

0

AndroidManifest.xml

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

只需使用其中@style/AppTheme.NoActionBarstyle.xml

<style name="AppTheme.NoActionBar"> 
     <item name="windowActionBar">false</item> 
     <item name="windowNoTitle">true</item> 
    </style> 
-2
View decorView = getWindow().getDecorView(); 
    int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION 
      | View.SYSTEM_UI_FLAG_FULLSCREEN; 
    decorView.setSystemUiVisibility(uiOptions); 
+0

FYI這是從文檔的碼:https://developer.android.com/training/system -ui/navigation.html。 @Rob將一些評論添加到您複製的代碼中會很棒。 – Micer