给ViewPager设置切换的效果。主要就是调用
public void setPageTransformer(boolean reverseDrawingOrder, PageTransformer transformer)
这个方法的一些说明
* <p><em>Note:</em> Prior to Android 3.0 the property animation APIs did not exist.
* As a result, setting a PageTransformer prior to Android 3.0 (API 11) will have no effect.</p>
3.0之后才有用。不过已经够了。现在app基本都是4.0最低支持版本了。
两个参数
* @param reverseDrawingOrder true if the supplied PageTransformer requires page views
* to be drawn from last to first instead of first to last.
* @param transformer PageTransformer that will modify each page's animation properties
需要传入一个PageTransformer,而这个PageTransformer是一个接口。需要我们去手动实现。
重写
public void transformPage(View page, float position);
方法。
* @param page Apply the transformation to this page
* @param position Position of page relative to the current front-and-center
* position of the pager. 0 is front and center. 1 is one full
* page position to the right, and -1 is one page position to the left.
注释。
手势往左为负,往右为正
根据position的取值对view进行变化吧。
一些效果可以参考Android 属性动画拓展(一)和这里。
通过一些日志可以看到这里收到影响的是两个不同的View,比如从第一页滑动到第二页。有这样的日志。
position对于第一个view为正。第二个view为负。