动画矢量Drawable中的“fillColor”属性动画

时间:2016-07-28 07:14:35

标签: android animation android-vectordrawable

在我的应用程序中,我使用箭头作为drawable,我想为fillColor属性设置动画。我遇到了AnimatedVectorDrawable示例,它们修改了pathData,transateY / X,旋转等属性。如何设置fillColor属性的动画,以便我的箭头定期更改颜色?

1 个答案:

答案 0 :(得分:0)

函数animate()没有直接更改fillColor的方法,但你可以做一个小技巧。在下一个代码中,我将向您展示如何使用函数animate()来使用函数动画两次模拟fillColor的更改:

drawableView.animate()
    .alpha(0.0f)
    .setDuration(100)
    .setListener(new AnimatorListenerAdapter() {
    @Override
    public void onAnimationEnd(Animator animation) {
        super.onAnimationEnd(animation);
        /*
        In this point you can change de color of drawable, 
        the color or property that you want to change (title, color, size...)
        */
        drawableView.animate()
            .alpha(1.0f)
            .setDuration(100)
            .setListener(new AnimatorListenerAdapter() {
                @Override
                public void onAnimationEnd(Animator animation) {
                    super.onAnimationEnd(animation);
                }
            });
     }
});

使用上面的代码,你可以在动画中更改drawable的一些属性,我的意思是,proccess将是下一个: 1 - 动画做drawable消失(alpha 0) 2 - 您更改所需的属性 3 - 动画使drawable再次出现(alpha 1)

如果您在Timer中使用此代码,您可以这样做,drawable会定期更改颜色。