android - Navigation Drawer hamburger icon missing -


i have code here setting navigation drawer. works fine except hamburger icon should there click , open drawer not appearing.mainactivity:

import android.support.v4.widget.drawerlayout; import android.support.v7.app.actionbar; import android.support.v7.app.actionbardrawertoggle; import android.support.v7.app.appcompatactivity; import android.os.bundle; import com.defcomm.invento.navigationdraweractivity; import android.support.v7.widget.toolbar; import android.view.menu; import android.view.menuitem;  public class invento extends appcompatactivity {  private toolbar toolbar; @override protected void oncreate(bundle savedinstancestate) {     super.oncreate(savedinstancestate);     setcontentview(r.layout.activity_invento);     toolbar= (toolbar) findviewbyid(r.id.app_bar);     setsupportactionbar(toolbar);     getsupportactionbar().setdisplayshowhomeenabled(true);     navigationdraweractivity drawerfragment= (navigationdraweractivity)   getsupportfragmentmanager().             findfragmentbyid(r.id.navigation_drawer);         drawerfragment.setup(r.id.navigation_drawer, (drawerlayout) findviewbyid(r.id.drawerlayout), toolbar);   } @override public boolean oncreateoptionsmenu(menu menu) {     // inflate menu; adds items action bar if present.     getmenuinflater().inflate(r.menu.menu_invento, menu);     return true; }  @override public boolean onoptionsitemselected(menuitem item) {     // handle action bar item clicks here. action bar     // automatically handle clicks on home/up button, long     // specify parent activity in androidmanifest.xml.     int id = item.getitemid();      //noinspection simplifiableifstatement     if (id == r.id.action_settings) {         return true;     }      return super.onoptionsitemselected(item); } 

}

navigation avtivity:

 import android.content.context;  import android.content.sharedpreferences;  import android.os.bundle;  import android.support.annotation.nullable;  import android.support.v4.app.fragment;   import android.support.v4.widget.drawerlayout;  import android.support.v7.app.actionbardrawertoggle;  import android.support.v7.widget.toolbar;   import android.view.layoutinflater;  import android.view.view;  import android.view.viewgroup;    /**  * simple {@link fragment} subclass. */ public class navigationdraweractivity extends fragment {   private actionbardrawertoggle mdrawertoggle; private drawerlayout mdrawerlayout;  private boolean  muserlearnedstate; view containerid; public static final string file_pref_name="testpef"; public static final string key_user_value="user_learned_drawer"; private boolean mfromsavedinstancestate; public navigationdraweractivity() {     // required empty public constructor }  @override public void oncreate(@nullable bundle savedinstancestate) {     super.oncreate(savedinstancestate);      muserlearnedstate=boolean.valueof(readpreference(getactivity(),   key_user_value, "false"));     if (savedinstancestate!=null){         mfromsavedinstancestate=true;     } }  @override public view oncreateview(layoutinflater inflater, viewgroup container,                          bundle savedinstancestate) {     // inflate layout fragment     return inflater.inflate(r.layout.fragment_navigation_drawer, container, false);  }   public void setup(int fragmentid,drawerlayout drawerlayout,toolbar toolbar) {     mdrawerlayout=drawerlayout;     containerid=getactivity().findviewbyid(fragmentid);     mdrawertoggle= new actionbardrawertoggle(getactivity(),drawerlayout,             r.string.drawer_open,r.string.drawer_close){         @override         public void ondraweropened(view drawerview) {             super.ondraweropened(drawerview);             if(!muserlearnedstate){                 muserlearnedstate=true;                 savetopreference(getactivity(),key_user_value,muserlearnedstate+"");             }             getactivity().invalidateoptionsmenu();         }          @override         public void ondrawerclosed(view drawerview) {             super.ondrawerclosed(drawerview);             mdrawertoggle.setdrawerindicatorenabled(true);             getactivity().invalidateoptionsmenu();         }     };     if(!muserlearnedstate&&!mfromsavedinstancestate){         mdrawerlayout.opendrawer(containerid);     }      mdrawerlayout.setdrawerlistener(mdrawertoggle);      mdrawerlayout.post(new runnable() {         @override         public void run() {             mdrawertoggle.syncstate();             mdrawertoggle.setdrawerindicatorenabled(true);         }     });  } public static void savetopreference (context context,string preferencename,string preferencevalue){     sharedpreferences shared= context.getsharedpreferences(file_pref_name, context.mode_private);     sharedpreferences.editor editor=shared.edit();     editor.putstring(preferencename,preferencevalue);     editor.apply(); } public static string readpreference(context context,string preferencename,string defaultvalue){     sharedpreferences share= context.getsharedpreferences(file_pref_name,context.mode_private);     return share.getstring(preferencename,defaultvalue); } 

}

mainactivity.xml

 <android.support.v4.widget.drawerlayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:id="@+id/drawerlayout" android:layout_height="match_parent" xmlns:app="http://schemas.android.com/apk/res-auto">  <relativelayout  android:layout_width="match_parent"     android:layout_height="match_parent"     >     <include         layout="@layout/app_bar"         android:id="@+id/app_bar"/>     <textview         android:layout_below="@+id/app_bar"         android:text="@string/hello_world"         android:layout_width="wrap_content"         android:layout_height="wrap_content" />  </relativelayout> <fragment     android:id="@+id/navigation_drawer"     android:layout_width="@dimen/drawer_width"     android:layout_height="match_parent"     android:layout_gravity="start"     app:layout="@layout/fragment_navigation_drawer"     android:name="com.defcomm.invento.navigationdraweractivity"     tools:layout="@layout/fragment_navigation_drawer" /> 

i don't know fault in this.i 'am using custom toolbar here cross checked too. nothing working.i don't know whether fault here.please help.

  final actionbar actionbar = getsupportactionbar();     if(actionbar!=null)     {         actionbar.sethomeasupindicator(android.r.drawable.ic_drawer);         actionbar.setdisplayhomeasupenabled(true);     } 

use above code in activity put icon of navigation drawer. can change on different activity.

use following code --

 @override     public void onbackpressed(){     if(drawer.isdraweropen()){ //replace actual function returns              drawer.close();          // replace actual function closes      drawer        }       else{        super.onbackpressed();       }     } 

Comments