Android Null Pointer Issue -
i've been using site ages, first time i've been unable find answer question. i'm following along online tutorial in order add image thumbnails app rss feed. keep experiencing null pointer error instantiation of convertview, instantiated how tutorials have don't understand why is.
public class postitemadapter extends arrayadapter<postdata> { private activity mycontext; private arraylist<postdata> datas; private string[] imageurlarray; layoutinflater inflater; static class viewholder { textview posttitleview; textview postdateview; imageview postthumbview; string postthumbviewurl; bitmap bitmap; } public postitemadapter(context context, int textviewresourceid, arraylist<postdata> objects) { super(context, textviewresourceid, objects); // todo auto-generated constructor stub mycontext = (activity) context; datas = objects; } public view getview(int position, view convertview, viewgroup parent) { viewholder viewholder; if (convertview == null) { convertview = inflater.inflate(r.layout.postitem, null); viewholder = new viewholder(); viewholder.postthumbview = (imageview) convertview.findviewbyid(r.id.postthumb); viewholder.posttitleview = (textview) convertview.findviewbyid(r.id.posttitlelabel); viewholder.postdateview = (textview) convertview.findviewbyid(r.id.postdatelabel); convertview.settag(viewholder); } else { viewholder = (viewholder) convertview.gettag(); } postdata post = datas.get(position); if (post.postthumburl != null) { viewholder.postthumbviewurl = post.postthumburl; new downloadimagetask().execute(viewholder); } else { viewholder.postthumbview.setimageresource(r.drawable.ic_action_event); } viewholder.posttitleview.settext(post.posttitle); viewholder.postdateview.settext(post.postdate); new downloadimagetask().execute(viewholder); return convertview; } } stack trace:
04-24 13:32:12.748 7335-7335/com.chuckfranklin.chuckfranklinlaw e/androidruntime﹕ fatal exception: main process: com.chuckfranklin.chuckfranklinlaw, pid: 7335 java.lang.nullpointerexception: attempt invoke virtual method 'android.view.view android.view.layoutinflater.inflate(int, android.view.viewgroup)' on null object reference @ com.chuckfranklin.chuckfranklinlaw.postitemadapter.getview(postitemadapter.java:56) @ android.widget.abslistview.obtainview(abslistview.java:2825) @ android.widget.listview.makeandaddview(listview.java:1884) @ android.widget.listview.filldown(listview.java:713) @ android.widget.listview.fillfromtop(listview.java:779) @ android.widget.listview.layoutchildren(listview.java:1679) @ android.widget.abslistview.onlayout(abslistview.java:2629) @ android.view.view.layout(view.java:16694) @ android.view.viewgroup.layout(viewgroup.java:5328) @ android.widget.relativelayout.onlayout(relativelayout.java:1077) @ android.view.view.layout(view.java:16694) @ android.view.viewgroup.layout(viewgroup.java:5328) @ android.widget.framelayout.layoutchildren(framelayout.java:573) @ android.widget.framelayout.onlayout(framelayout.java:508) @ android.view.view.layout(view.java:16694) @ android.view.viewgroup.layout(viewgroup.java:5328) @ android.support.v7.internal.widget.actionbaroverlaylayout.onlayout(actionbaroverlaylayout.java:502) @ android.view.view.layout(view.java:16694) @ android.view.viewgroup.layout(viewgroup.java:5328) @ android.widget.framelayout.layoutchildren(framelayout.java:573) @ android.widget.framelayout.onlayout(framelayout.java:508) @ android.view.view.layout(view.java:16694) @ android.view.viewgroup.layout(viewgroup.java:5328) @ android.widget.linearlayout.setchildframe(linearlayout.java:1702) @ android.widget.linearlayout.layoutvertical(linearlayout.java:1556) @ android.widget.linearlayout.onlayout(linearlayout.java:1465) @ android.view.view.layout(view.java:16694) @ android.view.viewgroup.layout(viewgroup.java:5328) @ android.widget.framelayout.layoutchildren(framelayout.java:573) @ android.widget.framelayout.onlayout(framelayout.java:508) @ android.view.view.layout(view.java:16694) @ android.view.viewgroup.layout(viewgroup.java:5328) @ android.view.viewrootimpl.performlayout(viewrootimpl.java:2321) @ android.view.viewrootimpl.performtraversals(viewrootimpl.java:2034) @ android.view.viewrootimpl.dotraversal(viewrootimpl.java:1191) @ android.view.viewrootimpl$traversalrunnable.run(viewrootimpl.java:6641) @ android.view.choreographer$callbackrecord.run(choreographer.java:777) @ android.view.choreographer.docallbacks(choreographer.java:590) @ android.view.choreographer.doframe(choreographer.java:560) @ android.view.choreographer$framedisplayeventreceiver.run(choreographer.java:763) @ android.os.handler.handlecallback(handler.java:739) @ android.os.handler.dispatchmessage(handler.java:95) @ android.os.looper.loop(looper.java:145) @ android.app.activitythread.main(activitythread.java:5942) @ java.lang.reflect.method.invoke(native method) @ java.lang.reflect.method.invoke(method.java:372) @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:1399) @ com.android.internal.os.zygoteinit.main(zygoteinit.java:1194)
you forgot initialize inflater. since you've got context in constructor, can @ following way:
inflater = layoutinflater.from(context); of course, should added constructor, not getview.
Comments
Post a Comment