如何在AnimatorSet playSequentially()中的动画之间添加延迟?

时间:2016-08-15 09:58:34

标签: android animation android-animation objectanimator animatorset

我正在使用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方法在动画之间添加延迟吗?

谢谢。

3 个答案:

答案 0 :(得分:6)

添加以下代码:

    out.setStartDelay(1000);

答案 1 :(得分:1)

你可以在第二个动画师(即out.setStartDelay(1000))上设置一个开始延迟,然后再将它添加到集合中。

答案 2 :(得分:0)

除了在各个动画上设置开始延迟外, 使用AnimatorSet.after(long delay)函数。

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

AnimatorSet.Builder