动画的分类
Android通过Animations为android UI提供了一系列的动画效果,可以进行旋转、缩放、淡入淡出等,这些效果可以应用在绝大多数的空间中。Android中的动画一般为两类:
(1)Frame-by-frame Animations:帧动画。帧动画定义一个图片序列,按照一定时间间隔一张一张的展示,以达到动画效果。
(2) Tweened Animations:补间动画,该动画为UI提供了旋转、位移、尺寸变化和透明度变化等效果。Alpha--透明度动画,Scale--缩放效果,Rotate--旋转,Translate--移动效果。
Android中的动画
动画的使用有两种方式:
在xml文件中静态定义使用
1.在res文件夹下面新建anim文件夹
2.在anim文件夹下面新建资源xxx.xml
3.在xxx.xml中添加动画代码
4.在java代码中加载并使用动画
在java代码中定义动画并加载动画
Alpha透明度变化
通过透明度变化可实现控件的淡入淡出等效果。
Roate旋转动画的使用
通过旋转动画为UI界面提供旋转动画
差速器
差速器作用是定义一个动画的变化速率,使基本的动画效果(alpha,scale.translate,rotate)得以加速,减速,重复。差速器可以自定义,也可以使用系统已实现的。下面列举几个常见的差速器。
(1)AccelerateDecelerateInterpolator :在动画开始与结束的地方速率改变比较慢,在中间的时候加速
(2)AnticipateInterpolator:开始的时候向后然后向前甩
(3)AnticipateOvershootInterpolator 开始的时候向后然后向前甩一定值后返回最后的值
(4)BounceInterpolator:动画结束的时候弹起
(5)CycleInterpolator 动画循环播放特定的次数,速率改变沿着正弦曲线
(6)DecelerateInterpolator 在动画开始的地方快然后慢
(7)LinearInterpolator:以常量速率改变
(8)OvershootInterpolator:向前甩一定值后再回到原来位置
尺寸变化动画
通过尺寸动画可以实现压面缩放等动画效果
Translate位移动画
通过位移动画可以为UI控件增加位置移动的动画
完整示例代码链接:https://download.csdn.net/download/u011897782/10564720