赋料扬雄敌,诗看子建亲。这篇文章主要讲述Android - 如何为随机数设置动画?相关的知识,希望能为你提供帮助。
我想用动画制作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();
【Android - 如何为随机数设置动画()】
mNumberView
无法将文本设置为randomString
。如果可能的话,用随机数制作数字动画师,而不是使用
ValueAnimator
答案此代码将每1秒生成9到0之间的随机数。
final int min = 0;
final int max = 9;
final int duration= 1000;
final Handler handler = new Handler();
final Runnable runnable = new Runnable() {
@Override
public void run() {
int random = new Random().nextInt(max - min + 1) + min;
handler.postDelayed(this,duration);
}
};
handler.post(runnable);
推荐阅读
- 如何处理服务器和本机android应用程序之间的时区差异()
- 如何将容器blob下载到Azure App Service wwwroot()
- 从VSTS设置App Identity的文件夹权限()
- Azure WebApp上VS持续交付的程序集错误
- Android Worklight应用程序中的启动画面后,黑屏会长时间出现
- android-数据在viewPage中丢失
- 从Android Studio到桌面软件的最佳进展()
- 如何使用Gradle为Android项目生成Eclipse和Intellij项目文件
- 困在Android Studio启动画面(启动画面)!