最近的项目中要用到3D旋转,搞了两天终于弄出来了,总结一下以供以后重用。
一、知识点介绍
3D旋转效果主要是借助了自定义Animation动画实现。通过继承Animation类,重写applyTransformation
1、applyTransformation
参数interpolatedTime表示执行进度(取值为0-1,1的时候动画结束),t为动画变化的载体。
下面具体介绍下这两个参数:
1)、interpolatedTime是Interpolator计算的结果。Interpolator是一个接口,主要用来对动画的播放的时间进度进行控制,有如下几种播放效果:
LinearInterpolator:匀速播放,为默认效果;
AccelerateInterpolator:加速播放;有一个参数factor,为加速因子,值越大加速效果越明显。
DecelerateInterpolator:减速播放;
AccelerateDecelerateInterpolator:先加速后减速播放,即中间播放得最快;
CycleInterpolator:循环播放;
可以通过 animation.setInterpolator( new