2014-01-06 61 views
0

我使用ActionBarSherlock實現NavigationDrawer,現在我試圖實現自定義圖標打開和關閉抽屜。我已經設置了自己的圖標(白色),但我無法擺脫那個灰色的默認圖標。ActionBarSherlock自定義NavigationDrawer圖標

在onCreateOptionsMenu

我這樣做:

getSupportActionBar().setDisplayShowTitleEnabled(false); // does not display activity title 
getSupportActionBar().setBackgroundDrawable(
     getResources().getDrawable(R.drawable.actionbar_background)); // blue background 
getSupportActionBar().setIcon(R.drawable.side_menu_button); // white icon 

圖爲差異,當導航抽屜被關閉(第一)和開放(第二張照片)。

有沒有辦法以編程方式做到這一點?或者有甚至有辦法做到這一點?我希望是。

謝謝。

編輯:這就是我想要實現:

enter image description here

回答

2

什麼目前你正在做的是設置在動作條,這是自定ActionBarDrawerToggle,圖標不同的圖標哪是你想要處理的。如果您查看文檔(http://developer.android.com/reference/android/support/v4/app/ActionBarDrawerToggle.html)並找到構造函數,您會看到有一個地方可以指定要由切換使用的自定義Drawable。

+0

謝謝你,你是對的,但這不是我所滿意的。我不想用白色取代灰色圖標,因爲它會像灰色一樣滑動。請看看我的帖子中的編輯,你會看到我想要實現的。 – vanomart

+0

您可以創建一個小的透明可繪製資源並將其傳遞給ActionBarDrawerToggle,這是最簡單的方法,無需重新編寫大量的類。 –

+0

我其實是這樣做的,而不是設置getSupportActionBar()。setIcon(R.drawable.side_menu_button);按照你的建議,我在ActionBarDrawerToggle的構造函數中使用它,但是這個drawable會在onclick事件中滑動到一邊,如第一張和第二張圖片所示。我不想要這種行爲。 – vanomart

相關問題