ValueAnimator 内存问题

ValueAnimator memory issue

我正在使用 ValueAnimator 个浮点值。

ValueAnimator anim = ValueAnimator.ofFloat(-1, 1);
anim.addUpdateListener(new AnimatorUpdateListener() {
        @Override
        public void onAnimationUpdate(ValueAnimator animation) {
            float f = (float) animation.getAnimatedValue();
        }
    });

问题所在 - 内存分配跟踪器检测到每次调用 getAnimatedValue() 都会创建一个新的 Float 对象。我在 INFINITE 重复模式下使用 ValueAnimator 并且不断创建新对象是个问题。有什么办法可以防止一直创建新对象吗?

P.S.: 我知道这种内存泄漏根本不是关键,只是对优化感兴趣。

有一种方法可以防止在每次调用 onAnimationUpdate() 方法时创建新的 Float 对象。就我而言,它看起来像:

@Override
public void onAnimationUpdate(ValueAnimator animation) {
    float t = 2f * animation.getAnimatedFraction() - 1f;
}