提纲:文章写了什么?
- 什么是属性动画?
- 属性动画相关接口及常用类
- ValueAnimator
- ObjectAnimator
- 估值器
- 差值器
属性动画,顾名思义就是:沿着一定的时间顺序,通过改变View的属性,从而得到的动画的效果。引入属性动画最大的作用就是为了“眼见为实”,对于ViewAnimation,动画的移动和缩放并没有真正的改变控件的位置和热区,而属性动画则可以做到这一点。
Interface:
Class:
这里要着重记录的是这几个类:
- ValueAnimator 属性动画的核心类
- ObjectAnimator 继承 ValueAnimator 对ValueAnimator进行了一层封装
- AnimatorSet 可以同时运行一组动画
- PropertyValuesHolder 他代表一个在动画运行中需要过度到的值。
- TypeEvaluator 实现此接口的实例,将决定AnimatorUpdateListener接收到的值。
这里有必要说明一下,上面对动画的描述是“运行”,而不是“播放”。因为属性动画的本质是在指定的时间内于指定的值之间过度。这就意味着他并不仅限于View控件。举例来说,他可以是一个不断运动的看不见的点,而你在需要的时候可以通过回调知道在某一时间点对应的值,从而进行canvas的绘制。