Android:如何使用 ValueAnimator

标签 android android-animation

我想用下面这个做一个翻译动画

public static void move(TextView view){

    ValueAnimator va = ValueAnimator.ofFloat(0f, 3f);
    int mDuration = 3000; //in millis
    va.setDuration(mDuration);
    va.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
        public void onAnimationUpdate(ValueAnimator animation) {

        }
    });
    va.setRepeatCount(5);
    va.start();
}

但我不知道如何使用 onAnimationUpdate 方法。

有人可以帮忙吗?

最佳答案

如果你真的,真的真的想使用 ValueAnimator 的动画翻译查看你可以这样做(完成你的例子,假设你的意思是translationX

请记住,您正在动画从 0px 到 3px 的平移,因此您可能不会看到太大的差异。

fun move(view: TextView) {
  val va = ValueAnimator.ofFloat(0f, 3f)
  va.duration = 3000 //in millis
  va.addUpdateListener { animation -> view.translationX = animation.animatedValue as Float }
  va.repeatCount = 5
  va.start()
}

关于Android:如何使用 ValueAnimator,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33870408/

相关文章:

android - 在 Android 上获取 OAuth2 token 时 UNREGISTERED_ON_API_CONSOLE

java - 不兼容的类型 : MainActivity cannot be converted to LifecycleOwner

android - ListView 行使用淡入动画多次动画

android - Android View 上的上下动画

android - 将使用 map API V1 的 Android 应用程序转换为 Maps Android API V2

android - 容器卡在应用程序 header 后面 (Android)

android - 从 runInTransaction() 在 Android Room 数据库中返回值

android - fragment 动画问题

android - 非线性 Activity 过渡动画

android - MotionLayout没有动画