listview - NullPointerException in retrieving data from Firebase in Android Studio -


i trying retrieve value firebase database , store in list view app getting closed. exception in logcat coming as

java.lang.nullpointerexception: attempt invoke virtual method 'void android.widget.listview.setadapter(android.widget.listadapter)' on null object reference @ com.example.dell.week11.mainactivity$1.ondatachange(mainactivity.java:60)

this main activity

package com.example.dell.week11; import android.app.activity;  import android.content.intent; import android.support.v7.app.appcompatactivity; import android.os.bundle; import android.view.menu; import android.view.menuinflater; import android.view.menuitem; import android.view.view; import android.widget.listview; import android.widget.textview; import android.widget.toast; import com.google.firebase.database.datasnapshot; import com.google.firebase.database.databaseerror; import com.google.firebase.database.databasereference; import com.google.firebase.database.firebasedatabase; import com.google.firebase.database.valueeventlistener;  import org.w3c.dom.text;  import java.util.arraylist; import java.util.list;  public class mainactivity extends appcompatactivity {  listview listview; databasereference databasefaq; list<faq> faqlist; @override  protected void oncreate(bundle savedinstancestate) {     super.oncreate(savedinstancestate);     databasefaq= firebasedatabase.getinstance().getreference("faq");     listview=(listview)findviewbyid(r.id.listview);     faqlist=new arraylist<>(); }  @override protected void onstart() {     super.onstart();      databasefaq.addvalueeventlistener(new valueeventlistener() {         @override         public void ondatachange(datasnapshot datasnapshot) {             faqlist.clear();             for(datasnapshot faqsnapshot:datasnapshot.getchildren())             {                 faq faq=faqsnapshot.getvalue(faq.class);                 faqlist.add(faq);              }             faqlist adapter=new faqlist(mainactivity.this,faqlist);             listview.setadapter(adapter);         }          @override         public void oncancelled(databaseerror databaseerror) {          }     }); }  @override public boolean oncreateoptionsmenu(menu menu) {     menuinflater inflater=getmenuinflater();     inflater.inflate(r.menu.menu,menu);      return super.oncreateoptionsmenu(menu); }  @override public boolean onoptionsitemselected(menuitem item) {     if(item.getitemid()==r.id.add)     {         intent i=new intent(mainactivity.this,addactivity.class);         startactivity(i);     }     return super.onoptionsitemselected(item);   } } 

next customadapter faqlist:

package com.example.dell.week11; import android.app.activity; import android.text.layout; import android.view.layoutinflater; import android.view.view; import android.view.viewgroup; import android.widget.arrayadapter; import android.widget.textview;  import java.util.list;  /**  * created dell on 4/7/2017. */  public class faqlist extends arrayadapter<faq> {  private activity context;  list<faq> faqlist;  public faqlist(activity context,list<faq> faqlist){      super(context,r.layout.list_layout,faqlist);     this.context=context;     this.faqlist=faqlist; }  @override public view getview(int position, view convertview, viewgroup parent) {     layoutinflater inflater=context.getlayoutinflater();     view listviewitem=inflater.inflate(r.layout.list_layout,null,true);      textview q=(textview)listviewitem.findviewbyid(r.id.questiontv);     textview a=(textview)listviewitem.findviewbyid(r.id.answertv);      faq faq=faqlist.get(position);     q.settext(faq.getfaqquestion());     a.settext(faq.getfaqanswer());     return listviewitem; } } 

and model class

package com.example.dell.week11;   /**  * created dell on 4/5/2017. */ public class faq { string faqid,faqquestion,faqanswer;  public faq() { }  public faq(string faqid, string faqquestion, string faqanswer) {     this.faqid = faqid;     this.faqquestion = faqquestion;     this.faqanswer = faqanswer; }  public string getfaqid() {     return faqid; }  public string getfaqquestion() {     return faqquestion; }  public string getfaqanswer() {     return faqanswer; } } 

you did not call setcontentview in oncreate method.


Comments

Popular posts from this blog

c# - Update a combobox from a presenter (MVP) -

How to understand 2 main() functions after using uftrace to profile the C++ program? -

How to put a lock and transaction on table using spring 4 or above using jdbcTemplate and annotations like @Transactional? -