4

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

谢谢你。

4

3 回答 3

7

添加这行代码:

    out.setStartDelay(1000);
于 2016-08-15T10:03:18.543 回答
1

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

于 2016-11-29T02:20:36.253 回答
0

与其在单个动画上设置开始延迟,不如使用该AnimatorSet.after(long delay)函数。

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

AnimatorSet.Builder

于 2020-11-10T02:11:37.017 回答