所以在我的游戏中有分数标签,将在游戏中显示
这是我的标签分数
的示例这是代码:
highscoretext = (TextView)findViewById(R.id.bt);
highscoretext.setText("0");
currentscore = (TextView)findViewById(R.id.ct);
currentscore.setText(String.valueOf(gamescore));
这就是我如何保存将在bestscore中显示的分数
SharedPreferences pref = getSharedPreferences("SavedGame", MODE_PRIVATE);
SharedPreferences.Editor editor = pref.edit();
editor.putInt("totalScore", gamescore);
if (gamescore > highscore){
highscoretext.setText(String.valueOf(gamescore));
editor.putInt("highscore", gamescore);
editor.commit();
我想知道像我这样的TextView
制作动画
因此,当标签分数显示时,分数将从0到当前分数计算,例如:10
当得分停止计数时,如果得分>最佳分数,最佳分数值改变
任何人都可以帮助我吗?
答案 0 :(得分:4)
对于 API> 11 ,我建议你使用ValueAnimator:
ValueAnimator animator = new ValueAnimator();
animator.setObjectValues(0, count);// here you set the range, from 0 to "count" value
animator.addUpdateListener(new AnimatorUpdateListener() {
public void onAnimationUpdate(ValueAnimator animation) {
highscoretext.setText(String.valueOf(animation.getAnimatedValue()));
}
});
animator.setDuration(1000); // here you set the duration of the anim
animator.start();
答案 1 :(得分:0)
使用某种计时器实现它应该相当简单。每次定时器点击时,您都会增加分数并更新显示,除非您已达到最终分数。
这可以使用处理程序(http://developer.android.com/reference/android/os/Handler.html)或java.util.Timer(http://docs.oracle.com/javase/7/docs/api/java/util/Timer.html)完成,但后一种方法可能不适合Android开发。