- Package com.example.jaazy;
- Import java.util.ArrayList;
- Import Android.support.v4.view.PagerAdapter;
- Import Android.view.View;
- Import Android.view.View.OnClickListener;
- Import Android.view.ViewGroup;
- /**
- * Create by Lanyan on 2014.04.24
- * This is a adapter
- */
- Public class Viewpageradapteronclick extends Pageradapter {
- private arraylist<view> views;
- private Viewpageonclick callback;
- Private Jazzyviewpager Pager;
- Public Viewpageradapteronclick (Jazzyviewpager pager,arraylist<view> Views,viewpageonclick callback) {
- this.setviews (views);
- This.callback=callback;
- This.pager=pager;
- }
- public void Setviews (arraylist<view> views) {
- if (views! = null)
- this.views = views;
- Else
- this.views = new arraylist<view> ();
- }
- public void Changeitem (arraylist<view> views) {
- this.setviews (views);
- Notifydatasetchanged ();
- }
- @Override
- public int GetItemPosition (Object object) {
- //TODO auto-generated method stub
- return position_none;
- }
- @Override
- public int GetCount () {
- //TODO auto-generated method stub
- return views.size ();
- }
- @Override
- Public Boolean isviewfromobject (View arg0, Object arg1) {
- //TODO auto-generated method stub
- return arg0 = = Arg1;
- }
- @Override
- public void Destroyitem (ViewGroup container, int position, Object object) {
- View v = views.get (position);
- Container.removeview (v);
- }
- public void Removeupdate (ViewGroup container) {
- Container.removeallviews ();
- }
- @Override
- Public Object Instantiateitem (ViewGroup container, final int position) {
- View v = views.get (position);
- V.setonclicklistener (new Onclicklistener () {
- public void OnClick (View v) {
- //TODO auto-generated method stub
- Callback.callbackonclickitem (position);
- }
- });
- Container.addview (v);
- Pager.setobjectforposition (v, position);
- return v;
- }
- public interface viewpageonclick{
- void Callbackonclickitem (int position);
- }
- }
Activity
[Java]View Plaincopy
- Import java.util.ArrayList;
- Import android.app.Activity;
- Import Android.os.Bundle;
- Import Android.view.View;
- Import Android.view.ViewGroup.LayoutParams;
- Import Android.widget.ImageView;
- Import Android.widget.Toast;
- Import Com.example.jaazy.JazzyViewPager.TransitionEffect;
- Import Com.example.jaazy.ViewPagerAdapterOnClick.ViewPageOnClick;
- Public class Mainactivity extends Activity implements viewpageonclick{
- Private Jazzyviewpager Pager;
- private Viewpageradapteronclick adapter;
- @Override
- protected void OnCreate (Bundle savedinstancestate) {
- super.oncreate (savedinstancestate);
- Setcontentview (R.layout.activity_main);
- Setupjazziness (Transitioneffect.stack);
- }
- private void setupjazziness (TransitionEffect stack) {
- //TODO auto-generated method stub
- Pager= (Jazzyviewpager) Findviewbyid (R.id.jazzy_pager);
- adapter=New Viewpageradapteronclick (pager, getviews (), this);
- Pager.setadapter (adapter);
- Pager.setpagemargin (5);
- //Press Stack mode
- Pager.settransitioneffect (Transitioneffect.stack);
- //Stereo internal access
- //pager.settransitioneffect (Transitioneffect.cubein);
- //Stereoscopic projection
- //pager.settransitioneffect (transitioneffect.cubeout);
- //Left /Right Extrusion
- //pager.settransitioneffect (transitioneffect.accordion);
- //Horizontal page
- //pager.settransitioneffect (transitioneffect.fliphorizontal);
- //Vertical page
- //pager.settransitioneffect (transitioneffect.flipvertical);
- //fan-in swing
- //pager.settransitioneffect (Transitioneffect.rotatedown);
- //Bottom sector swing in
- //pager.settransitioneffect (transitioneffect.rotateup);
- //Standard
- //pager.settransitioneffect (Transitioneffect.standard);
- //tabs (Card form)
- ///pager.settransitioneffect (Transitioneffect.tablet);
- //zoom in
- //pager.settransitioneffect (transitioneffect.zoomin);
- //zoom out
- //pager.settransitioneffect (transitioneffect.zoomout);
- }
- private arraylist<view> Getviews () {
- //TODO auto-generated method stub
- arraylist<view> list=New arraylist<view> ();
- ImageView i=New ImageView (this);
- Layoutparams params=New Layoutparams (Layoutparams.match_parent, layoutparams.match_parent);
- I.setlayoutparams (params);
- I.setbackgroundresource (R.DRAWABLE.A);
- ImageView i2=New ImageView (this);
- I2.setlayoutparams (params);
- I2.setbackgroundresource (r.drawable.b);
- ImageView i3=New ImageView (this);
- I3.setlayoutparams (params);
- I3.setbackgroundresource (R.DRAWABLE.C);
- ImageView i4=New ImageView (this);
- I4.setlayoutparams (params);
- I4.setbackgroundresource (R.DRAWABLE.E);
- List.add (i);
- List.add (I2);
- List.add (i3);
- List.add (I4);
- return list;
- }
- @Override
- public void Callbackonclickitem (int position) {
- //TODO auto-generated method stub
- Toast.maketext (This, "position:" +position, + ). Show ();
- }
- }
Jazzyviewpager the animated enumeration 11, if you need other animations, you can add it yourself
Android Viewpager animation effects