android - How to load array bitmap display in View Pager? -
i have array of bitmap in activity
. want load array bitmap in viewpager
. don't have nay idea concept.
check link have change drawable bitmap.. here code..
step 1) after creating fresh project. change main.xml follow have 1 viewpager widget in it.
<?xml version="1.0" encoding="utf-8"?> <linearlayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <android.support.v4.view.viewpager android:id="@+id/myfivepanelpager" android:layout_width="match_parent" android:layout_height="match_parent" /> </linearlayout>
step 2) our main concern bind data inside viewpager can swipe. pageradapter bind data viewpager , create view dynamically when needed. in pageradapter remove view use on can avoid memory wastage . create 1 new class , paste below code inside it.
package com.horizontalscrollviewwithpageindicator; import android.app.activity; import android.os.parcelable; import android.support.v4.view.pageradapter; import android.support.v4.view.viewpager; import android.view.view; import android.view.viewgroup.layoutparams; import android.widget.imageview; import android.widget.imageview.scaletype; public class viewpageradapter extends pageradapter { activity activity; int imagearray[]; public viewpageradapter(activity act, int[] imgarra) { imagearray = imgarra; activity = act; } public int getcount() { return imagearray.length; } public object instantiateitem(view collection, int position) { imageview view = new imageview(activity); view.setlayoutparams(new layoutparams(layoutparams.fill_parent, layoutparams.fill_parent)); view.setscaletype(scaletype.fit_xy); view.setbackgroundresource(imagearray[position]); ((viewpager) collection).addview(view, 0); return view; } @override public void destroyitem(view arg0, int arg1, object arg2) { ((viewpager) arg0).removeview((view) arg2); } @override public boolean isviewfromobject(view arg0, object arg1) { return arg0 == ((view) arg1); } @override public parcelable savestate() { return null; } }
step 3) final step , viewpager complete. in pageradapter , have created 1 imageview display child of viewpager need 1 image array show image. have image in drawable folder. created 1 array this
private int imagearra[] = { r.drawable.antartica1, r.drawable.antartica2, r.drawable.antartica3, r.drawable.antartica4, r.drawable.antartica5, r.drawable.antartica6, r.drawable.antartica7, r.drawable.antartica8 };
now need attach our pageradapter android viewpager . change our main activity code following ---
package com.horizontalscrollviewwithpageindicator; import android.app.activity; import android.os.bundle; import android.support.v4.view.viewpager; import android.view.menu; public class pageindicatoractivity extends activity { @override public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); viewpageradapter adapter = new viewpageradapter(this, imagearra); viewpager mypager = (viewpager) findviewbyid(r.id.myfivepanelpager); mypager.setadapter(adapter); mypager.setcurrentitem(0); } private int imagearra[] = { r.drawable.antartica1, r.drawable.antartica2, r.drawable.antartica3, r.drawable.antartica4, r.drawable.antartica5, r.drawable.antartica6, r.drawable.antartica7, r.drawable.antartica8 }; @override public boolean oncreateoptionsmenu(menu menu) { getmenuinflater().inflate(r.menu.activity_main, menu); return true; } }
Comments
Post a Comment