Объектная анимация будет анимировать объект только один раз - PullRequest
0 голосов
/ 25 ноября 2018

После того, как кнопка (randomButton) была анимирована, она не будет снова анимирована - , но почему ?Как заставить анимацию каждый раз вызываться ObjectAnimator?

Button randomButton = eliminate();
randomButton.setText("");
objectAnimator = ObjectAnimator.ofFloat(randomButton, "rotation", 180);
objectAnimator.setDuration(500);
objectAnimator.start();

1 Ответ

0 голосов
/ 27 ноября 2018

Вам нужно второе значение в вашем, чтобы реанимировать объект.

objectAnimator = ObjectAnimator.ofFloat(randomButton, "rotation", 180);

Это от https://developer.android.com/reference/android/animation/ObjectAnimator, "Одно значение подразумевает, что это значение является тем, к которому анимируется,в этом случае начальное значение будет получено из анимируемого свойства, а целевой объект при первом вызове start (). Два значения означают начальное и конечное значения. Более двух значений предполагают начальное значение, значения для анимации черезпо пути и конечное значение (эти значения будут равномерно распределены по продолжительности анимации). "

Правильный код будет:

    objectAnimator = ObjectAnimator.ofFloat(randomButton, "rotation", 0, 180);
...