Android——属性动画(ValueAnimator)

属性动画,顾名思义是关于属性值设定的动画,长度,高度的随意拉伸,屏幕的随意移

动等待。

属性动画分两种:ValueAnimator和ObjectAnimator。

ValueAnimator是关于设定一系列值的动画,给他变化的关键值(offloat.)

给他一个时间 setDuration、给他一个加速器 SetsetInterpolator

你能得到无数个变化过程中的值,该动画就是在这些值中随意变化。

1、创建ValueAnimator的对象

ValueAnimator va=ValueAnimator.ofFloat(0,50,-50,100,200,0),

这些值个数不定,动画一直沿着给定数值变化,这些是坐标。

2、设置动画持续的时间

va.setDuration(3000);

3、设置动画的插值器(加速器)

va.setInterpolator(new LinearInterpolator());

4、设置这些数值的更新监听方法

va.addUpdateListener(listener);

传入的listener通过属性可以直接new 出该对象。

private AnimatorUpdateListener listener=new AnimatorUpdateListener() {

        @Override
        public void onAnimationUpdate(ValueAnimator animation) {
            // TODO Auto-generated method stub
            float value=(Float) animation.getAnimatedValue();
            iv.setTranslationX(value);
            iv.setTranslationY(value);
            iv.setScaleY(value/100);
            iv.setRotationY(value);
        }
    };

通过参数Animation获得之前设置的数值,给指定动画设置即可。

这里将可以看到,可以组合各种动画,而且都是沿着数值变化,是其他动画所做不到

的,也就是它的独特之处。

不要忘记最后va.start();启动动画。。。。

你可能感兴趣的:(android,动画,valueAnima,Animator,属性动画)