简而言之,我正在寻找一个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/

10-12 06:29