2015-06-12 10 views
6

This person is basically running into the same problem I'm having, jednak dostarczone rozwiązanie nie jest pomocne, ani nie działa dla mnie, ponieważ mój kod wywołuje mDrawerToggle.sycnState() (w odroczony Runnable).Domyślny szablon nawigacji na szufladzie Android Studio nie pokazuje ikony Hamburger, tylko ikona strzałki

Próbowałem również dodać go do onActivityCreated w moim Fragment, który wydaje się nic nie robić. Nie wiedząc dokładnie, co robi syncState, nie mogę stwierdzić, czy synchronizuje stan bycia otwartym (domyślnie jest to kod szablonu), a następnie nie jest synchronizowany ponownie po zamknięciu szuflady.

Dodałbym kod, ale możesz to przetestować, tworząc nowy projekt w Android Studio (1.2.2), wybierając działanie szuflady nawigacji, a następnie po prostu uruchamiając projekt - bez żadnych zmian. Zobaczysz, że jedyną ikoną jest zawsze strzałka <. Ustawiłem nawet punkty przerwania do sprawdzenia obiektu ActionBarDrawerToggle, który w rzeczywistości ma ikonę hamburgera w swojej pamięci, aby ikona mogła narysować, jeszcze bardziej mnie flummox!

Jestem na moim końcu rozumu tutaj.

+0

Użyj tego http://stackoverflow.com/questions/30772629/change-the-arrow-icon-in-the-drawer-menu/30772864#30772864 – user765

Odpowiedz

20

prostu zorientowali się rozwiązanie w przypadku gdy ktoś inny jest ten problem:

Zmień import u góry fragmentu z

import android.support.v4.app.ActionBarDrawerToggle; 

do

import android.support.v7.app.ActionBarDrawerToggle; 

następnie zmienić kod w zestawie od

mDrawerToggle = new ActionBarDrawerToggle(
      getActivity(),     /* host Activity */ 
      mDrawerLayout,     /* DrawerLayout object */ 
      R.drawable.ic_drawer,    /* nav drawer image to replace 'Up' caret */ 
      R.string.navigation_drawer_open, /* "open drawer" description for accessibility */ 
      R.string.navigation_drawer_close /* "close drawer" description for accessibility */ 
    ) 

do

mDrawerToggle = new ActionBarDrawerToggle(
      getActivity(),     /* host Activity */ 
      mDrawerLayout,     /* DrawerLayout object */ 
      R.string.navigation_drawer_open, /* "open drawer" description for accessibility */ 
      R.string.navigation_drawer_close /* "close drawer" description for accessibility */ 
    ) 
+0

Dziękuję człowieka . Nie rozumiem, dlaczego Google to robi. – Michal

+0

Wielkie dzięki! Dobra robota +1! –

+0

Dzięki mam .. Naprawdę bardzo pomaga .. ale dlaczego nie mogę go zdobyć ??? – Asmi