欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

安卓自定义View之添加动画

程序员文章站 2022-03-02 21:07:13
...

1. 如何为自定义View添加动画效果

public void startAnimation() {
    ValueAnimator anim = ValueAnimator.ofFloat(minValue, midValue, maxValue);
    anim.setRepeatCount(ValueAnimator.INFINITE);//设置无限重复
    anim.setRepeatMode(ValueAnimator.RESTART);//设置重复模式
    anim.setDuration(1000);
    anim.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
        @Override
        public void onAnimationUpdate(ValueAnimator animation) {
            value = (Float) animation.getAnimatedValue();
            postInvalidate();
        }
    });
    anim.start();
}

即利用ValueAnimator,在动画的duration期间,产生一系列的value值,然后不断刷新来触发View的重绘,重绘过程中用到了这些value值,从而达到了动画效果