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

  • Wie kann ich das angemeldeten Google-Konto auf Android-Handys abrufen?
  • CardView innerhalb von RecyclerView: Animation beim Befüllen
  • Wie man eine Android-Ansicht auf der Grundlage ihrer Eltern-Dimensionen Größe
  • Android: Anrufstapelgröße erhöhen
  • Wie bekomme ich programmgesteuert die Datenverwendungsgrenze, die vom Benutzer auf Android OS-Konfiguration eingestellt wurde?
  • Android - Implementierung Icon Pack Unterstützung
  •  @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

  • Wie man fokussiertes Feld in die Ansicht mit iscroll und Android WebView bringt
  • Android - Wie kann ich einen Knopf blinken?
  • Fehler beim Aktualisieren des SDK mit dem SDK-Manager
  • Englisch US-Sprachcode geändert? Google Speech Api v2 nicht das richtige Ergebnis zurückgeben
  • Wie kann man einen Alarm in android stoppen?
  • Android MVP Muster Paketstruktur
  • 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.