1.简介
Android提供了几种动画类型:View Animation 、Property Animation 、Drawable Animation。Property Animation是一个功能强大的框架,他可以让任何的属性具有动态效果,简单的说,属性动画就是设置动画操作的对象的属性、持续时间,开始和结束的属性值,时间差值等。View Animation相当简单,不过只能支持简单的缩放、平移、旋转、透明度基本的动画,且有一定的局限性,view的位置不可改变。
属性动画允许你定义以下动画的风格:
1.持续时间:你可以为你的动画指定一个持续时间,系统默认的是300ms
2.时间差值:你可以指定属性的值如何被计算
3.重复计算和行为:当动画到要结束的时候你可以指定它是否重复执行
4.动画集合:你可以加载一组动画到一个集合使之能一起运行
5.动画更新延迟:你可以指定多久更新一次你的动画,默认值是10ms
2.API介绍
1.ObjectAnimator 动画的执行类
ObjectAnimator 提供工厂方法获得ObjectAnimator 对象,有ofInt、ofFloat、ofObject三个方法可以获取ObjectAnimator 对象,他们都是设置动画作用的元素、作用的属性、动画开始、结束、以及中间的任意个属性值。当对于属性值,只设置一个的时候,会认为当然对象该属性的值为开始(getPropName反射获取),然后设置的值为终点。如果设置两个,则一个为开始、一个为结束。
动画更新的过程中,会不断调用setPropName更新元素的属性,所有使用ObjectAnimator更新某个属性,必须得有getter(设置一个属性值的时候)和setter方法
2.ValueAnimator 动画的执行类
3.AnimatorSet 用于控制一组动画的执行:线性,一起,每个动画的先后执行等。
4.AnimatorInflater 用户加载属性动画的xml文件
5.TypeEvaluator 类型估值,主要用于设置动画操作属性的值。
6.TimeInterpolator 时间插值,上面已经介绍。