ViewPager 16种切换动画,早晚能用到

来源:互联网 发布:java new string 参数 编辑:程序博客网 时间:2024/05/24 06:39

相信很多同学都用过Viewpager但是,Viewpager提供的动画不能应对我们所有的需求,今天就给大家带来16+的动画效果,你可以用,更可以自定义。

转载请注明来源
http://blog.csdn.net/androidmsky/article/details/50248937
代码连接
https://github.com/AndroidMsky/ViewPagerAnimation

上图:
共有16种效果
这里写图片描述
这里写图片描述

16个效果名:

0.左右黏合滑动
1.快速消失切入
2.3D向前飞出屏幕
3.3D箱子旋转
4.平移
5.卡片左右翻页
6.卡片上下翻页
7.等比放大缩小
8左右带角度平移1
9左右带角度平移2
10.好像没有写case10.
11.遮盖翻页
12.内旋3D翻页
13.不翻页中心缩小
14.左右半透明平移
15.改变透明度变换
16.左右黏贴平移

找到源头。其实安卓早就为我们提供了各种各样的viewpager切换动画API ,我们只需重写们只需写一行代码

viewPager.setPageTransformer(true,                                new DepthPageTransformer());
  • 1
  • 2

第一个参数true就是 是否开启动画的意思。来我们看看第二个类是什么:

public class DepthPageTransformer extends ABaseTransformer {    private static final float MIN_SCALE = 0.75f;    @Override    protected void onTransform(View view, float position) {        if (position <= 0f) {            view.setTranslationX(0f);            view.setScaleX(1f);            view.setScaleY(1f);        } else if (position <= 1f) {            final float scaleFactor = MIN_SCALE + (1 - MIN_SCALE) * (1 - Math.abs(position));            view.setAlpha(1 - position);            view.setPivotY(0.5f * view.getHeight());            view.setTranslationX(view.getWidth() * -position);            view.setScaleX(scaleFactor);            view.setScaleY(scaleFactor);        }    }    @Override    protected boolean isPagingEnabled() {        return true;    }}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26

其实就是在定义自己的动画了,这里就不细说,大家想要什么效果自己拿去,如果还不够就自己去写ABaseTransformer吧.

别忘记引入包

 compile files('libs/androidannotations-api-3.2.jar')
  • 1

欢迎关注作者。欢迎评论讨论。欢迎拍砖。
如果觉得这篇文章对你有帮助,欢迎打赏, 欢迎star,Fork我的github。
喜欢作者的也可以Follow。也算对作者的一种支持。
本文Github代码链接 https://github.com/AndroidMsky/ViewPagerAnimation欢迎加作者自营安卓开发交流群:308372687
这里写图片描述

—————————————————————————————

作者推荐:

安卓自定义view滚动数据显示
http://blog.csdn.net/androidmsky/article/details/53009886
RecyclerView下拉刷新分页加载性能优化和Gilde配合加载三部曲
http://blog.csdn.net/androidmsky/article/details/53115818
打造企业级网络请求框架集合retrofit+gson+mvp
http://blog.csdn.net/androidmsky/article/details/52882722
安卓手机自动接起QQ视频秒变摄像头
http://blog.csdn.net/androidmsky/article/details/53066441

—————————————————————————————

            <link rel="stylesheet" href="http://static.blog.csdn.net/public/res-min/markdown_views.css?v=2.0">                </div>
原创粉丝点击