如何重复TimelineLite时间轴的一部分

时间:2012-10-26 14:13:46

标签: actionscript-3 greensock

我正在使用Greensocks库“TimelineLite”进行补间。

我一直在寻找解决方案而没有任何运气。如何制作timelineLite的时间轴。假设我在时间轴内有10个补间,我想让3-10无限循环,前三个循环只有一个。

2 个答案:

答案 0 :(得分:5)

使用“onComplete:loop;”

将事件侦听器添加到tweenLite补间
var myTimeline:TimelineLite = new TimelineLite({onComplete:loop});

在要开始循环的位置添加标签:

//Add a "spin" label 3-seconds into the timeline
myTimeline.addLabel("spin", 3);

然后创建循环函数

function loop():void
{
  //go to the "spin" label and play the timeline from there
  myTimeline.gotoAndPlay("spin");
}

编辑:或者无需创建单独的loop函数:

var myTimeline:TimelineLite = new TimelineLite({
    onComplete: tl.gotoAndPlay,
    onCompleteScope: tl,
    onCompleteParams: ["spin"],
});

答案 1 :(得分:4)

使用TimelineMax。您可以将子时间轴附加到TimelineMax。因此,您可以将循环补间放在一个时间轴(设置为重复)上,并将其附加到父时间轴,该时间轴也具有非循环补间。