【发布时间】:2019-02-14 10:17:29
【问题描述】:
我想用动画制作一个 0-9 的随机数。
我尝试使用ValueAnimator,但没有运气。
这是我没有ValueAnimator 的代码(有效):
final int min = 0;
final int max = 9;
final int random = new Random().nextInt((max - min) + 1) + min;
randomSting = String.valueOf(random);
mNumberView.setText(randomSting);
这里是 ValueAnimator 不起作用(不起作用):
animator = ValueAnimator.ofInt(0, 9);
final int min = 0;
final int max = 9;
final int random = new Random().nextInt((max - min) + 1) + min;
randomSting = String.valueOf(random);
cTimer = new CountDownTimer(3000, 1000) {
public void onTick(long millisUntilFinished) {
animator.setDuration(3000);
animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
public void onAnimationUpdate(ValueAnimator animation) {
mNumberView.setText(animation.getAnimatedValue().toString());
}
});
animator.start();
}
public void onFinish() {
animator.cancel();
mNumberView.setText(randomSting);
}
};
cTimer.start();
mNumberView 无法将文本设置为randomString。
如果可能的话,用随机数制作数字动画,不要使用ValueAnimator
【问题讨论】: