Home

Awesome

MagicViewPager

单页显示3个Item的ViewPager炫酷切换效果,适用于Banner等。

效果图

<img src="screenshot/rotate_y.gif" width="420px"/> <img src="screenshot/rotate_down.gif" width="420px"/> <img src="screenshot/rotate_up.gif" width="420px"/> <img src="screenshot/alpha.gif" width="420px"/> <img src="screenshot/scaleIn.gif" width="420px"/> <img src="screenshot/zuhe.gif" width="420px"/>

使用

###(1)引入

compile `com.zhy:magic-viewpager:1.0.1`

###(2)示例

<FrameLayout
    android:layout_width="match_parent"
    android:layout_height="160dp"
    android:clipChildren="false"
    android:layout_centerInParent="true"
    android:background="#aadc71ff"
    >
    <android.support.v4.view.ViewPager
        android:id="@+id/id_viewpager"
        android:layout_width="match_parent"
        android:layout_marginLeft="60dp"
        android:clipChildren="false"
        android:layout_marginRight="60dp"
        android:layout_height="120dp"
        android:layout_gravity="center"
        >
    </android.support.v4.view.ViewPager>

</FrameLayout>

注意外层android:layout_centerInParent="true".

mViewPager.setPageMargin(20);//设置page间间距,自行根据需求设置
mViewPager.setOffscreenPageLimit(3);//>=3
mViewPager.setAdapter...//写法不变

//setPageTransformer 决定动画效果
mViewPager.setPageTransformer(true, new 
							RotateDownPageTransformer());

##目前可选动画

动画间可以自由组合,例如:

mViewPager.setPageTransformer(true, 
	new RotateDownPageTransformer(new AlphaPageTransformer(new ScaleInTransformer())));

##致谢

本文是我在审公众号投稿时,由本篇文章产生灵感:Android超高仿QQ附近的人搜索展示(一) ,ps:欢迎关注我的公众号。

除上文外编码过程中参考: