android - RecyclerView within fragment -
the following recyclerview crashes when run in fragment class inside "else". following exeption:
01-05 18:19:14.922 18178-18178/? e/androidruntime: fatal exception: main process: com.ymoshel.moshel.handcuffed, pid: 18178 java.lang.nullpointerexception: attempt invoke virtual method 'void android.support.v7.widget.recyclerview.setlayoutmanager(android.support.v7.widget.recyclerview$layoutmanager)' on null object reference @ com.designdemo.uaha.threefragments.oncreateview(threefragments.java:153) @ android.support.v4.app.fragment.performcreateview(fragment.java:1965) @ android.support.v4.app.fragmentmanagerimpl.movetostate(fragmentmanager.java:1078) @ android.support.v4.app.fragmentmanagerimpl.movetostate(fragmentmanager.java:1259) @ android.support.v4.app.backstackrecord.run(backstackrecord.java:738) @ android.support.v4.app.fragmentmanagerimpl.execpendingactions(fragmentmanager.java:1624) @ android.support.v4.app.fragmentmanagerimpl.executependingtransactions(fragmentmanager.java:570) @ android.support.v4.app.fragmentpageradapter.finishupdate(fragmentpageradapter.java:141) @ android.support.v4.view.viewpager.populate(viewpager.java:1106) @ android.support.v4.view.viewpager.populate(viewpager.java:952) @ android.support.v4.view.viewpager$3.run(viewpager.java:251) @ android.view.choreographer$callbackrecord.run(choreographer.java:858) @ android.view.choreographer.docallbacks(choreographer.java:670) @ android.view.choreographer.doframe(choreographer.java:603) @ android.view.choreographer$framedisplayeventreceiver.run(choreographer.java:844) @ android.os.handler.handlecallback(handler.java:739) @ android.os.handler.dispatchmessage(handler.java:95) @ android.os.looper.loop(looper.java:148) @ android.app.activitythread.main(activitythread.java:5466) @ java.lang.reflect.method.invoke(native method) @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:726) @ com.android.internal.os.zygoteinit.main(zygoteinit.java:616) public view oncreateview(layoutinflater inflater, viewgroup container, bundle savedinstancestate) { string strtext = getarguments().getstring("edttext"); log.d(tag,"strtext: " + strtext); recyclerview rv = (recyclerview) inflater.inflate( r.layout.fragment_prod_list, container, false); mactivity = getactivity(); thisfragtype = getarguments().getint(arg_frag_type, 0); thisfragtypew = getarguments().getint(arg_frag_type, 1); log.d(tag, "the frag type is: " + thisfragtype); log.d(tag,"test text "+text); if (thisfragtype==recent_arrest_frag||thisfragtype==search_by_name_frag) { setuprecyclerview(rv); return rv; }else { view view = inflater.inflate(r.layout.fragment_rssitem_detail, container, false); arraylistcountynames = new arraylist<>(); test = getarguments().getstring("edttext", "default"); log.d(tag, "test: " + test); textview textview = (textview) view.findviewbyid(r.id.emptyview); textview.settext(test); final string shared_size = getdefaults("shared_size", mactivity); log.d(tag,"shared_size: "+shared_size); string [] listcountys = new string[integer.parseint(shared_size)]; (int = 0 ;i<integer.parseint(shared_size);i++){ final string defaults = getdefaults("shared" + i, mactivity); listcountys[i]=defaults; arraylistcountynames.add(defaults); log.d(tag,"shared: "+defaults); } recyclerview recyclerview; recyclerview = (recyclerview) view.findviewbyid(r.id.recyclerview); startadapter(listcountys,listcountys,test ); // setup layout manager items linearlayoutmanager layoutmanager = new linearlayoutmanager(mactivity); // control orientation of items // supports linearlayoutmanager.horizontal layoutmanager.setorientation(linearlayoutmanager.vertical); // attach layout manager recyclerview recyclerview.setlayoutmanager(layoutmanager); recyclerview.setvisibility(view.visible); adapter = new mypickcountfavoritearrestadapter(mactivity,listcountys,listcountys,test); return view; } this recyclerview when run on regular activity works fine, fragment class causing trouble suggestions?
i see other views such "textview" being found appropriately , not causing npe. check here if id "r.id.recyclerview" being found , returning appropriate value in fragment, possible recycler view trying find present in layout activity , may need create 1 in fragment (or have 1 in fragment, since displaying on activity). also, default orientation vertical not have set such in code.
Comments
Post a Comment