2017-02-17 5 views
0

Я пытаюсь изменить цвет фона моего представления. Я написал код, и я могу изменить цвет с помощью анимации, но в первый раз мой взгляд замерзает до изменения цвета. Это мой кодНевозможно изменить фон в поле зрения

private void changeBackgroundColorWithAnimation(int duration, final View view, int startColor, int endColor) { 
    ValueAnimator anim = new ValueAnimator(); 
    anim.setIntValues(startColor, endColor); 
    anim.setEvaluator(new ArgbEvaluator()); 
    anim.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() { 
     @Override 
     public void onAnimationUpdate(final ValueAnimator valueAnimator) { 
      view.setBackgroundColor((Integer) valueAnimator.getAnimatedValue()); 

     } 
    }); 

    anim.setDuration(duration); 
    anim.start(); 
} 

Я называю свою функцию, как это:

changeBackgroundColorWithAnimation(300, TransferFragmentNewVersion.rootLayout, 
    Color.parseColor("#E6000000"), Color.WHITE); 

Как я сказал, что цвет фона изменился, но первый раз Посмотреть замерзает (только первый раз) л

Как я могу решить свою проблему? Всем спасибо.

ответ

0

Почему вы не отправляете исходный цвет своего представления в качестве начального цвета? Вы можете заменить Color.parseColor("#E6000000") на TransferFragmentNewVersion.rootLayout.getSolidColor().

Не могли бы вы высказать больше своего кода?

Смежные вопросы