android - How do you change an image programatically in a viewpager? -


i'm using viewpager image sources webservice, , dynamically add pages viewpager.

but now, i'm testing how change image programatically.

this simple layout:

<?xml version="1.0" encoding="utf-8"?> <linearlayout xmlns:android="http://schemas.android.com/apk/res/android"     android:layout_width="match_parent"     android:layout_height="match_parent"     android:orientation="vertical" >      <imageview         android:id="@+id/imageview1"         android:layout_width="match_parent"         android:layout_height="match_parent"         android:scaletype="centerinside"         android:src="@drawable/button_increase" />  </linearlayout> 

here's instantiateitem viewpager class:

public object instantiateitem(view collection, int position) {              layoutinflater inflater = (layoutinflater) collection.getcontext()                     .getsystemservice(context.layout_inflater_service);              view view = inflater.inflate(r.layout.test_layout, null);             imageview imageview1= ((imageview)(view)findviewbyid(r.id.imageview1));            imageview1.setimagedrawable(getresources().getdrawable(r.drawable.button_increase));              ((viewpager) collection).addview(view);              return view;         } 

i exception on setimagedrawable , here's stacktrace:

06-05 14:58:17.923: e/androidruntime(22982): fatal exception: main 06-05 14:58:17.923: e/androidruntime(22982): java.lang.nullpointerexception 06-05 14:58:17.923: e/androidruntime(22982):    @ *project*.mainactivity$custompageradapter.instantiateitem(mainactivity.java:93) 06-05 14:58:17.923: e/androidruntime(22982):    @ android.support.v4.view.pageradapter.instantiateitem(pageradapter.java:110) 06-05 14:58:17.923: e/androidruntime(22982):    @ android.support.v4.view.viewpager.addnewitem(viewpager.java:649) 06-05 14:58:17.923: e/androidruntime(22982):    @ android.support.v4.view.viewpager.populate(viewpager.java:783) 06-05 14:58:17.923: e/androidruntime(22982):    @ android.support.v4.view.viewpager.onmeasure(viewpager.java:1016) 06-05 14:58:17.923: e/androidruntime(22982):    @ android.view.view.measure(view.java:12863) 06-05 14:58:17.923: e/androidruntime(22982):    @ android.widget.relativelayout.measurechildhorizontal(relativelayout.java:594) 06-05 14:58:17.923: e/androidruntime(22982):    @ android.widget.relativelayout.onmeasure(relativelayout.java:376) 06-05 14:58:17.923: e/androidruntime(22982):    @ android.view.view.measure(view.java:12863) 06-05 14:58:17.923: e/androidruntime(22982):    @ android.view.viewgroup.measurechildwithmargins(viewgroup.java:4698) 06-05 14:58:17.923: e/androidruntime(22982):    @ android.widget.framelayout.onmeasure(framelayout.java:293) 06-05 14:58:17.923: e/androidruntime(22982):    @ android.view.view.measure(view.java:12863) 06-05 14:58:17.923: e/androidruntime(22982):    @ android.widget.linearlayout.measurevertical(linearlayout.java:812) 06-05 14:58:17.923: e/androidruntime(22982):    @ android.widget.linearlayout.onmeasure(linearlayout.java:553) 06-05 14:58:17.923: e/androidruntime(22982):    @ android.view.view.measure(view.java:12863) 06-05 14:58:17.923: e/androidruntime(22982):    @ android.view.viewgroup.measurechildwithmargins(viewgroup.java:4698) 06-05 14:58:17.923: e/androidruntime(22982):    @ android.widget.framelayout.onmeasure(framelayout.java:293) 06-05 14:58:17.923: e/androidruntime(22982):    @ com.android.internal.policy.impl.phonewindow$decorview.onmeasure(phonewindow.java:2256) 06-05 14:58:17.923: e/androidruntime(22982):    @ android.view.view.measure(view.java:12863) 06-05 14:58:17.923: e/androidruntime(22982):    @ android.view.viewrootimpl.performtraversals(viewrootimpl.java:1197) 06-05 14:58:17.923: e/androidruntime(22982):    @ android.view.viewrootimpl.handlemessage(viewrootimpl.java:2585) 06-05 14:58:17.923: e/androidruntime(22982):    @ android.os.handler.dispatchmessage(handler.java:99) 06-05 14:58:17.923: e/androidruntime(22982):    @ android.os.looper.loop(looper.java:137) 06-05 14:58:17.923: e/androidruntime(22982):    @ android.app.activitythread.main(activitythread.java:4507) 06-05 14:58:17.923: e/androidruntime(22982):    @ java.lang.reflect.method.invokenative(native method) 06-05 14:58:17.923: e/androidruntime(22982):    @ java.lang.reflect.method.invoke(method.java:511) 06-05 14:58:17.923: e/androidruntime(22982):    @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:790) 06-05 14:58:17.923: e/androidruntime(22982):    @ com.android.internal.os.zygoteinit.main(zygoteinit.java:557) 06-05 14:58:17.923: e/androidruntime(22982):    @ dalvik.system.nativestart.main(native method) 

anyone know try? can see kind of measure problem, don't have idea regarding issue.

thanks in advance

instead of

 imageview imageview1= ((imageview)(view)findviewbyid(r.id.imageview1)); 

use

 imageview imageview1= ((imageview) view.findviewbyid(r.id.imageview1)); 

Comments

Popular posts from this blog

java - Play! framework 2.0: How to display multiple image? -

gmail - Is there any documentation for read-only access to the Google Contacts API? -

php - Controller/JToolBar not working in Joomla 2.5 -