How to display images in Android and change it by swipe right/left? -
i want add introduction android application, inform user how app works. intro displayed only, if preferred settings intro false. in intro, there 3 images , @ end, there page, text , 2 buttons, enable user access application, making login. change between each image, made swipe movement, (so right left +, left right -). how can ?
this can done via use of fragments , viewpager , fragmentpageradapter. @ documentation:
fragmentpageradapter: http://developer.android.com/reference/android/support/v4/app/fragmentpageradapter.html
viewpager: http://developer.android.com/reference/android/support/v4/view/viewpager.html
you can have 1 fragment instantiated based on id in viewpager, , id indicate image show in image fragment. 3 images, instantiate new fragment sets image in fragment based on current page in fragmentpageradapter. second fragment can 1 login buttons , text want @ end.
ex adapter defined in fragmentactivity (or appcompatactivity)
public class myadapter extends fragmentpageradapter { public myadapter(fragmentmanager fm) { super(fm); } @override public int getcount() { return num_items; } @override public fragment getitem(int position) { if(position < 3) return imagefragment.newinstance(position); else return new loginfragment(); } } ex image fragment various images in introduction:
public static class imagefragment extends fragment{ private int mposition; public imagefragment(){ } public static imagefragment newinstance(int pos){ imagefragment frag = new imagefragment(); bundle args = new bundle(); args.putint("pos", pos); frag.setarguments(args); return frag; } @override public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); mposition = getarguments().getint("pos"); } @override public view oncreateview(layoutinflater inflater, viewgroup container, bundle savedinstancestate) { view v = inflater.inflate(r.layout.fragment_image, container, false); imageview backgroundview = (imageview) v.findviewbyid(r.id.background_image); switch(mposition){ case 0: //set background view image 1 case 1: //set background view image 2 default: //set background view image 3 } return v; } }
Comments
Post a Comment