android - NullPointerException when referencing toolbar in fragment -


i have added toolbar in activity , trying access in fragment change title , icon navigation, keep getting error

java.lang.nullpointerexception: attempt invoke virtual method 'void android.app.actionbar.setdisplayhomeasupenabled(boolean)' on null object reference 

when run app number of warnings possible object being null. know has getsupportactionbar cannot work out doing wrong

here code declaring toolbar in activity

toolbar toolbar = (toolbar) findviewbyid(r.id.toolbar); setsupportactionbar(toolbar); 

the code referencing , changing toolbar in fragment

toolbar toolbar = (toolbar) getactivity().findviewbyid(r.id.toolbar); ((appcompatactivity)getactivity()).setsupportactionbar(toolbar); ((appcompatactivity)getactivity()).getsupportactionbar().setdisplayshowhomeenabled(true); 

and code declaring toolbar in xml

<android.support.v7.widget.toolbar     android:id="@+id/toolbar"     android:layout_width="match_parent"     android:layout_height="?attr/actionbarsize"     android:background="?attr/coloraccent"     android:layout_alignparenttop="true"     app:popuptheme="@style/apptheme.popupoverlay" /> 

i using appcompatactivity if helps

i think problem access toolbar before view inflation results in nullpointerexception. , since using support library need cast toolbar android.support.v7.widget.toolbar. here solution may help:

public view oncreateview(layoutinflater inflater, viewgroup container,                              bundle savedinstancestate) {          view rootview = inflater.inflate(r.layout.fragment_main, container, false);         android.support.v7.widget.toolbar toolbar = (android.support.v7.widget.toolbar) rootview.findviewbyid(r.id.toolbar);         ((appcompatactivity)getactivity()).setsupportactionbar(toolbar);         ((appcompatactivity)getactivity()).getsupportactionbar().setdisplayshowhomeenabled(true);              return rootview; } 

Comments

Popular posts from this blog

java - Run spring boot application error: Cannot instantiate interface org.springframework.context.ApplicationListener -

python - pip wont install .WHL files -

Excel VBA "Microsoft Windows Common Controls 6.0 (SP6)" Location Changes -