Как применить setColorFilter () с анимацией? - PullRequest
0 голосов
/ 21 октября 2019

У меня есть вид, который я хочу преобразовать в красный цвет с анимацией.

Я пытался применить цветной фильтр из альфа-цвета 00 к альфа-цвету FF, но когда анимация начинается, очевидно, чтоизображение прозрачно для альфа-цветового фильтра 00, так что это не решение:

    ValueAnimator anim = new ValueAnimator();
    anim.setIntValues(Color.parseColor("#00EE1B1B"), Color.parseColor("#FFEE1B1B"));
    anim.setEvaluator(new ArgbEvaluator());
    anim.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
        @Override
        public void onAnimationUpdate(ValueAnimator valueAnimator) {
            view.setColorFilter((Integer)valueAnimator.getAnimatedValue(), android.graphics.PorterDuff.Mode.MULTIPLY);
        }
    });

    anim.setDuration(4000);
    anim.start();

Как я могу анимировать цветовой фильтр от красного до красного?

1 Ответ

0 голосов
/ 21 октября 2019

Ну наконец-то я обнаружил, что белый цветовой фильтр не меняет вид ... так что если просто сделать это, проблема решена:

finalEnemyWeaponColorFilter.setIntValues(Color.parseColor("#FFFFFF"), Color.parseColor("#EE1B1B"));
...