转载请注明出处
作者:AboutJoke ( http://blog.csdn.net/u013200308 )
原文链接:http://blog.csdn.net/u013200308/article/details/51250217
在介绍之前,先让我们来看一个图:
那么如图所示的效果是如何实现的呢?这里就需要用到我们今天的主角———ValueAnimator。
首先让我们来看一下官方的介绍:
这个类提供了一个用于计算动画值并将其设置为目标对象的动画的简单时序引擎。
默认情况下,ValueAnimator采用非线性时域插值,通过AccelerateDecelerateInterpolator类,加速和减速的动画。这种行为可以通过调用setinterpolator改变(timeinterpolator)。
从上面的内容我们可以看出来ValueAnimator并不能算作是动画,因为它是通过一系列复杂的计算,使一个值开始非线性变化到另一个值。让我们先通过一个demo来了解一下:
//参数 int... values 可以传入任意个数,如0,25,50
ValueAnimator animator=ValueAnimator.ofInt(0,25,50);// 0 -25 -50
animator.a