2012-12-27 138 views
4

我想單擊時顯示/隱藏操作欄。Android:ActionBar故障顯示和隱藏

它顯示並隱藏,但它不光滑...底部隱藏,但一段時間前不同的背景消失。

我甚至在一個簡單的Hello World應用程序中試過它,結果是一樣的。 下面的代碼:

public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

     TextView tv = (TextView) findViewById(R.id.shit); 
     tv.setOnClickListener(new OnClickListener() { 


      public void onClick(View v) { 
       getActionBar().hide(); 

      } 
     }); 
    } 

回答

7

使用覆蓋模式,而不是顯示和隱藏的動作條。

actionbar documentation

要注意的是隱藏和刪除操作欄使你的活動 重新佈局,以佔據由行動 欄佔用的空間。如果您的活動定期隱藏並顯示操作欄(例如Android Gallery應用中的 ),則可能需要使用疊加模式。 覆蓋模式將在您的活動佈局 之上繪製操作欄,而不是在屏幕的自己區域。這樣,當操作欄隱藏並重新出現時,您的佈局 保持固定。要啓用 疊加模式,請爲您的活動創建一個主題,並將android:windowActionBarOverlay設置爲true以將 設置爲true。有關更多信息,請參閱 關於Styling the Action Bar的部分。