最初的目标是在 event1 上反向播放动画,通常在 event2 上。所以我使用了这段代码:
/* some imports */
public class Element extends MovieClip {
private var tween:Tween;
public function Element() {
tween = new Tween(this, "y", Regular.easeInOut, -this.height, 0, 0.7, true);
tween.stop();
this.addEventListener(event1, reverse);
this.addEventListener(event2, normal);
}
private function reverse(e:Event1) {
tween.yoyo();
}
public function normal(e:Event2) {
tween.stop();
tween.rewind();
tween.start();
}
}
现在我测试了一下: 1.Event1发生,动画正常播放 2.Event2发生,动画倒转 3.Event1 1发生,动画倒转
出于某种奇怪的原因,悠悠球在某种程度上是永久性的。我知道一些解决方法,比如为每个动画创建新的 Tween,检查是否已经使用了 yoyo,等等。
这是预期的行为吗?在 adobe API 中,我读到了 begin 和 finish 道具,它们都有“在创建新的 Tween 实例或调用 Tween.yoyo() 方法时将此属性设置为参数。”。我是否已手动重置它们?
我不想使用 Tweenmax、tweenlite 或任何外部库。