java - Unable to find TextView when populating ListView with ArrayAdapter -


i'm getting nullpointer exception @ following line, if textview i'm referring cannot found:

                descriptor.settext("single"); 

i checked id field , same in code , in xml, i'm not sure if have error somewhere else in adapter.

logcat

06-02 23:24:08.903  11160-11160/com.example.albert.betterapp e/androidruntime﹕ fatal exception: main      process: com.example.albert.betterapp, pid: 11160      java.lang.nullpointerexception              @ com.example.albert.betterapp.displayallbets$mylistadapter.getview(displayallbets.java:464)              @ android.widget.abslistview.obtainview(abslistview.java:2733)              @ android.widget.listview.measureheightofchildren(listview.java:1274)              @ android.widget.listview.onmeasure(listview.java:1186)              @ android.view.view.measure(view.java:17396)              @ android.view.viewgroup.measurechildwithmargins(viewgroup.java:5365)              @ android.widget.linearlayout.measurechildbeforelayout(linearlayout.java:1410)              @ android.widget.linearlayout.measurevertical(linearlayout.java:695)              @ android.widget.linearlayout.onmeasure(linearlayout.java:588)              @ android.view.view.measure(view.java:17396)              @ android.widget.relativelayout.measurechildhorizontal(relativelayout.java:719)              @ android.widget.relativelayout.onmeasure(relativelayout.java:455)              @ android.view.view.measure(view.java:17396)              @ android.view.viewgroup.measurechildwithmargins(viewgroup.java:5365)              @ android.widget.framelayout.onmeasure(framelayout.java:310)              @ android.support.v7.internal.widget.contentframelayout.onmeasure(contentframelayout.java:124)              @ android.view.view.measure(view.java:17396)              @ android.view.viewgroup.measurechildwithmargins(viewgroup.java:5365)              @ android.support.v7.internal.widget.actionbaroverlaylayout.onmeasure(actionbaroverlaylayout.java:444)              @ android.view.view.measure(view.java:17396)              @ android.view.viewgroup.measurechildwithmargins(viewgroup.java:5365)              @ android.widget.framelayout.onmeasure(framelayout.java:310)              @ android.view.view.measure(view.java:17396)              @ android.view.viewgroup.measurechildwithmargins(viewgroup.java:5365)              @ android.widget.linearlayout.measurechildbeforelayout(linearlayout.java:1410)              @ android.widget.linearlayout.measurevertical(linearlayout.java:695)              @ android.widget.linearlayout.onmeasure(linearlayout.java:588)              @ android.view.view.measure(view.java:17396)              @ android.view.viewgroup.measurechildwithmargins(viewgroup.java:5365)              @ android.widget.framelayout.onmeasure(framelayout.java:310)              @ com.android.internal.policy.impl.phonewindow$decorview.onmeasure(phonewindow.java:2505)              @ android.view.view.measure(view.java:17396)              @ android.view.viewrootimpl.performmeasure(viewrootimpl.java:2175)              @ android.view.viewrootimpl.measurehierarchy(viewrootimpl.java:1316)              @ android.view.viewrootimpl.performtraversals(viewrootimpl.java:1513)              @ android.view.viewrootimpl.dotraversal(viewrootimpl.java:1200)              @ android.view.viewrootimpl$traversalrunnable.run(viewrootimpl.java:6401)              @ android.view.choreographer$callbackrecord.run(choreographer.java:803)              @ android.view.choreographer.docallbacks(choreographer.java:603)              @ android.view.choreographer.doframe(choreographer.java:573)              @ android.view.choreographer$framedisplayeventreceiver.run(choreographer.java:789)              @ android.os.handler.handlecallback(handler.java:733)              @ android.os.handler.dispatchmessage(handler.java:95)              @ android.os.looper.loop(looper.java:157)              @ android.app.activitythread.main(activitythread.java:5335)              @ java.lang.reflect.method.invokenative(native method)              @ java.lang.reflect.method.invoke(method.java:515)              @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:1265)              @ com.android.internal.os.zygoteinit.main(zygoteinit.java:1081)              @ dalvik.system.nativestart.main(native method)

adapter

private class mylistadapter extends arrayadapter<betdisplayer> {          public mylistadapter() {              super(displayallbets.this,r.layout.activity_singletotalbet,listwriter);          }          @override          public view getview(int position,view convertview, viewgroup parent) {              view itemview = convertview;              if (itemview == null) {                  itemview = getlayoutinflater().inflate(r.layout.activity_singletotalbet,parent,false);              }              betdisplayer currentwriter = listwriter.get(position);              log.d("testing", currentwriter.getselections());              log.d("testing2", currentwriter.getselections());              string selections = currentwriter.getselections();              int numberofselections = 0;              for( int i=0; i<selections.length(); i++ ) {                  if( selections.charat(i) == '/' ) {                      numberofselections++;                  }              }              if (numberofselections == 1) {                  textview descriptor = (textview) findviewbyid(r.id.no);                  descriptor.settext("single");              } else if (numberofselections == 2) {                  textview descriptor = (textview) findviewbyid(r.id.no);                  descriptor.settext("double");              } else if (numberofselections == 3) {                  textview descriptor = (textview) findviewbyid(r.id.no);                  descriptor.settext("treble");              } else {                  textview descriptor = (textview) findviewbyid(r.id.no);                  descriptor.settext("accumulator" + "(" + numberofselections + ")");              }              textview status = (textview) itemview.findviewbyid(r.id.status);              status.settext(currentwriter.getstatus());              return itemview;          }      }      private void populatelist() {          arrayadapter<betdisplayer> adapter = new mylistadapter();          final listview list = (listview) findviewbyid(r.id.betslistviews);          list.setadapter(adapter);      }                }

because, textview descriptor part of itemview (from r.layout.activity_singletotalbet) access using reference of itemview

like,

textview descriptor = (textview) itemview.findviewbyid(r.id.no); 

Comments

Popular posts from this blog

python - TypeError: start must be a integer -

c# - DevExpress RepositoryItemComboBox BackColor property ignored -

django - Creating multiple model instances in DRF3 -