简而言之,我正在寻找一个Android小部件,该部件可让我以编程方式设置一个整数值,并使它平滑地递增自身以到达该位置。例如,值是10,而我更新为25,我希望它快速将每个数字从10压缩到25,而不是仅仅跳到25。这对于美学很简单。
我猜想大概是300毫秒左右的线程/插值器,以及对TextView的setText调用?也许有一种更聪明的方法可以做到这一点,但是大多数情况下我只是惊讶地发现自己找不到。
有人看到过这些东西吗?
最佳答案
如果您有TextView,可以为此使用ValueAnimator,例如:
ValueAnimator va = ValueAnimator.ofInt(10, 25);
va.setInterpolator(new AccelerateDecelerateInterpolator());
va.setDuration(300);
va.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
public void onAnimationUpdate(ValueAnimator animation) {
Integer value = (Integer) animation.getAnimatedValue();
textView.setText(value);
}
});
这应该给您想要的结果。您可以更改插值器以获得稍微不同的效果。
关于android - Android平滑计数器递增,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29751954/