2

Flash AS3 で実行されている一連のアニメーションを実行したいところに行き詰まっています。TweenClass を使用してムービークリップをアニメーション化することはできますが、連続して再生することはできません。

evntInTween の再生が完了した後に closeTween を再生したいと考えています。

私が使用しているコードは次のとおりです。

import fl.transitions.Tween;
import fl.transitions.easing.*;
import fl.transitions.TweenEvent;





BtnEvent.buttonMode = true;
BtnEvent.addEventListener(MouseEvent.ROLL_OVER, EventOver);
BtnEvent.addEventListener(MouseEvent.ROLL_OUT, EventOut);
BtnEvent.addEventListener(MouseEvent.CLICK, EventClick);


 function EventOver(event:MouseEvent) {
    event.target.gotoAndPlay(2);
}

 function EventOut(event:MouseEvent) {
    event.target.gotoAndPlay(11);
}


 function EventClick(event:MouseEvent) {
  var evntInTween:Tween = new Tween(eventzmov, "y", Strong.easeOut, 463.75, 1794.6, 3, true);


  var closetween:Tween = new Tween(closeevent, "alpha", Strong.easeOut, 0, 1, 3, true);



}
4

2 に答える 2

0

greensock による Tween ライブラリ TweenLite (別名 TweenMax) に切り替えることを強くお勧めします。次のような構文を使用します。

//TweenLite.to(objectToTween, timeToTween, {propertyOne:value, propertyTwo:value, onComplete: functionToCallWhenFinished});
TweenLite.to(object, 4, {y:50, alpha:0, onComplete:finishedTween, ease:Quad.easeOut});

TweenMax (TweenLite のより機能豊富なバージョン) には、数行のコードで複雑なアニメーションをプログラミングするための TimeLine クラスもあります。

https://www.greensock.com/tweenmax/

于 2012-11-20T11:52:42.293 に答える
0

最初のトゥイーンの再生が停止した後にのみ2番目のトゥイーンが作成されるように、トゥイーンをネストする必要があると思います-fl.transitions.TweenEvent.MOTION_FINISH終了後にイベントを送信するため、ボタンにリスナーを割り当ててリッスンします。一度ドロップすることを忘れないでください必要なくなります。

function EventClick(event:MouseEvent) {
    var evntInTween:Tween = new Tween(eventzmov, "y", Strong.easeOut, 463.75, 1794.6, 3, true);
    event.target.addEventListener(TweenEvent.MOTION_FINISH,startSecondTween);
    evntInTween.start();
}
function startSecondTween(e:TweenEvent):void {
    var closetween:Tween = new Tween(closeevent, "alpha", Strong.easeOut, 0, 1, 3, true);
    event.target.removeEventListener(TweenEvent.MOTION_FINISH,startSecondTween);
    closetween.start();
}

}

于 2012-11-20T10:10:28.677 に答える