Hamburger Icon zeigt nicht in Navigation Schublade Fragment

Ich benutze eine Fragement für Navigationsschublade und kann daher onPostCreated verwenden, um syncState aufzurufen

public class NavigationDrawerFragment extends Fragment{ .... 

Aufruf von syncState () auf avctivityCreated

 @Override public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); // Indicate that this fragment would like to influence the set of actions in the action bar. setHasOptionsMenu(true); mDrawerToggle.syncState(); } 

Verwenden Sie das Symbol ic_drawer für das Symbol

 public void setUp(int fragmentId, DrawerLayout drawerLayout) { mFragmentContainerView = getActivity().findViewById(fragmentId); mDrawerLayout = drawerLayout; // set a custom shadow that overlays the main content when the drawer opens mDrawerLayout.setDrawerShadow(R.drawable.drawer_shadow, GravityCompat.START); // set up the drawer's list view with items and click listener ActionBar actionBar = getActionBar(); actionBar.setDisplayHomeAsUpEnabled(true); actionBar.setHomeButtonEnabled(true); // ActionBarDrawerToggle ties together the the proper interactions // between the navigation drawer and the action bar app icon. 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 */ ) { @Override public void onDrawerClosed(View drawerView) { super.onDrawerClosed(drawerView); if (!isAdded()) { return; } getActivity().supportInvalidateOptionsMenu(); // calls onPrepareOptionsMenu() } @Override public void onDrawerOpened(View drawerView) { super.onDrawerOpened(drawerView); if (!isAdded()) { return; } if (!mUserLearnedDrawer) { // The user manually opened the drawer; store this flag to prevent auto-showing // the navigation drawer automatically in the future. mUserLearnedDrawer = true; SharedPreferences sp = PreferenceManager .getDefaultSharedPreferences(getActivity()); sp.edit().putBoolean(PREF_USER_LEARNED_DRAWER, true).apply(); } getActivity().supportInvalidateOptionsMenu(); // calls onPrepareOptionsMenu() } }; 

Kann nicht herausfinden, was falsch ist Bitte helfen Sie

  • Aktualisieren eines Fragments in Reaktion auf Android Navigation Schublade Interaktion
  • DrawerLayout und Multi Pane Layout
  • Beenden Sie die App, wenn Sie die Taste "Zurück" in der Aktivität mit mehreren Fragmenten in der Navigationsschublade drücken
  • Navigation Schublade mehrere Container und Best Practice
  • Navigationsschublade Menü Scroll Effekt
  • Kann keine Tabs im Fragment von Navigation Dracher Android hinzufügen
  • Wie kann man Expandable android navigation Schublade mit Subitems implementieren?
  • Android: NavigationDrawer / mehrere Aktivitäten / gleiche Menü
  • 2 Solutions collect form web for “Hamburger Icon zeigt nicht in Navigation Schublade Fragment”

    Ich hatte auch dieses Problem. Für mich importiere android.support.v7.app.ActionBarDrawerToggle anstelle von android.support.v4.app.ActionBarDrawerToggle behoben. Sie müssen auch das Argument R.drawable.ic_drawer entfernen, wenn Sie mDrawerToggle definieren:

    mDrawerToggle = new ActionBarDrawerToggle( getActivity(), mDrawerLayout, R.string.navigation_drawer_open, R.string.navigation_drawer_close )

    Wenn das nicht klappt, probier die Antworten auf diese Frage .

    Die akzeptierte Antwort war es nicht für mich zu lösen, ich habe herausgefunden, dass ich die falsche Überschreibung für onPostCreate hatte

     @Override public void onPostCreate(Bundle savedInstanceState, PersistableBundle persistentState) { super.onPostCreate(savedInstanceState, persistentState); mDrawerToggle.syncState(); } 

    Es muss sein

     @Override public void onPostCreate(Bundle savedInstanceState) { super.onPostCreate(savedInstanceState); mDrawerToggle.syncState(); } 
    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.