2016-01-31 67 views
1

我使用此代碼來隱藏導航欄。問題是,當我進入不同的活動時,導航欄彈出並隱藏自己(發生在不到一秒鐘),我不喜歡。我如何防止它彈出。是否有另一種方法來隱藏它。活動之間的導航欄

public void onWindowFocusChanged(boolean hasFocus) { 
    super.onWindowFocusChanged(hasFocus); 
    if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.KITKAT) { 
     if (hasFocus) { 
      getWindow().getDecorView() 
        .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); 
     } 
    } 
} 

回答

1

在onCreate()中使用它可以防止它彈出。

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

您創建一個類並隱藏導航欄那裏。然後在其他兩個類中擴展此類。因此,您應該使用繼承。

+0

,你能否告訴一個例子,請 – Nikola

0

使用此:

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN); 
}