【问题标题】:How to add a delay between animations in AnimatorSet playSequentially()?如何在 AnimatorSet playSequentially() 中添加动画之间的延迟?
【发布时间】:2016-08-15 09:58:34
【问题描述】:

我正在使用这样的 AnimatorSet playSequentially 方法:

AnimatorSet set = new AnimatorSet();
ObjectAnimator in = ObjectAnimator.ofFloat(splash, "alpha", 0f, 1f);
in.setDuration(2500);
in.setInterpolator(new AccelerateInterpolator());
ObjectAnimator out = ObjectAnimator.ofFloat(splash, "alpha", 1f, 0f);
out.setDuration(2500);
out.setInterpolator(new AccelerateInterpolator());

set.playSequentially(in,out);

我想在动画 1 和 2 之间添加延迟,如下所示:

set.playSequentially(in,1000,out);

是否可以使用 playSequentially 方法在动画之间添加延迟?

谢谢。

【问题讨论】:

    标签: android animation android-animation objectanimator animatorset


    【解决方案1】:

    添加这行代码:

        out.setStartDelay(1000);
    

    【讨论】:

      【解决方案2】:

      您可以在将第二个 Animator(即out.setStartDelay(1000))添加到集合之前为其设置启动延迟。

      【讨论】:

        【解决方案3】:

        而不是为单个动画设置开始延迟, 使用AnimatorSet.after(long delay) 函数。

        AnimatorSet s = new AnimatorSet();
        s.play(anim1).after(1000).after(anim2);
        

        AnimatorSet.Builder

        【讨论】:

          猜你喜欢
          • 2016-03-03
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多