我有多个物体以随机速度随机移动。我想重复动画。
我试图在动画结束后使用onComplete重新启动每个对象,但是我怎样才能将它专门定位到该对象?目前其溢出
private function lineAnimation (e:DisplayObject):void
{
TweenLite.to (e,randomTime, {x:randomX, onComplete: lineAnimation(e)});
}
答案 0 :(得分:1)
为onComplete设置回调时,您只需要传递函数本身。通过设置onComplete: lineAnimation(e)
,它会一遍又一遍地执行lineAnimation。当您需要传递参数时,您可以使用匿名函数进行回调,如下所示:
private function lineAnimation (e:DisplayObject):void
{
TweenLite.to(e, randomTime, {x:randomX, onComplete:function():void {lineAnimation(e)}});
}
此外,由于您使用的是TweenLite,您可能需要查看内置循环的TweenMax,这样您就可以执行以下操作:
TweenMax.to(e, randomTime, {x:randomX, repeat:-1}); // -1 repeats indefinitely