2017-02-16 8 views
2

Я использую Библиотеку поддержки дизайна Google и DrawerLayout.ActionBarDrawerToggle не открывает ящик до первого слайда

Установка:

final DrawerLayout drawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout); 
NavigationView drawer = (NavigationView) findViewById(R.id.drawer); 
if(mDrawerToggle == null) { 
    mDrawerToggle = new ActionBarDrawerToggle(this, drawerLayout, mToolbar, R.string.open, R.string.feather_close); 
    drawerLayout.addDrawerListener(mDrawerToggle); 
    mDrawerToggle.syncState(); 
} 

Когда я начинаю мое приложение, пульсирующий эффект значок гамбургера отображается, но ящик не открывается. Когда я открываю ящик хотя бы один раз, двигаясь слева, значок гамбургера работает на протяжении всего времени работы. У меня нет специального прослушивателя на кнопке переключения или самом ящике, а метод onOptionsItemSelected не вызывается.

Пожалуйста, помогите мне узнать, что произойдет.

спасибо.

ответ

4

Я нашел его: я случайно был android:visibility="gone" в моем NavigationView. Какой причудливый побочный эффект.

-1

я решил его использовать его:

DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout); 
    ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(
      this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close); 
    drawer.setDrawerListener(toggle); 
    toggle.syncState(); 

    NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view); 
    navigationView.setNavigationItemSelectedListener(this); 
+0

Это точно, что я делаю ... + setDrawerListener устарел –

+0

Какую версию DrawerLayout вы используете? Я использую v4. import android.support.v4.widget.DrawerLayout; – lsca

 Смежные вопросы

  • Нет связанных вопросов^_^