2014-01-06 3 views
0

Я реализую NavigationDrawer с помощью ActionBarSherlock, и теперь я пытаюсь реализовать пользовательский значок для открытия и закрытия ящика. Я уже установил свой собственный значок (белый), но я не могу избавиться от этого серого значка по умолчанию.ActionBarSherlock custom NavigationDrawer icon

в 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 

На рисунке показана разница, когда панель навигации закрыта (первый) и открытый (второй снимок).

Есть ли способ сделать это программно? Или есть какой-то способ сделать это? Надеюсь, это так.

спасибо.

EDIT: Это то, что я пытаюсь достичь:

enter image description here

ответ

2

Что вы сейчас делаете, установка значка на ActionBar, который отличается от установки значок 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