2011-06-21 11 views
0

トゥイーン識別子を動的に設定するにはどうすればよいですか。私はevalを試しましたが、代入演算子の左に変数が必要だと言います。ここで私が試したものです:AS2:動的トゥイーン識別子

eval ("TweenAX" + circle.current.arrowHead.count) = new Tween(circle.current.arrowHead, "_x", mx.transitions.easing.Strong.easeOut, circle.current._x, Stage.width/2, 2, true); 
eval ("TweenAY" + circle.current.arrowHead.count) = new Tween(circle.current.arrowHead, "_y", mx.transitions.easing.Strong.easeOut, circle.current._y, Stage.height/2, 2, true); 

乾杯

+0

答えはありませんが、私は[tweener](http://code.google.com/p/tweener/)を見てみることをお勧めします。 – DanielB

+0

ええと...私はevalを好きではありません。あなたは、あなたのトゥイーンを格納する配列または連想配列を持つことができます。 evalかどうかにかかわらず、常に、_rootを介して変数にアクセスするためのハックな方法があります。しかし、@Danielが述べたように、より良いトゥイーンライブラリを試してみてください。 Tweenerまたは[TweenLite](http://www.greensock.com/tweenlite/)は、デフォルトのmx.transitions.Tweenクラスよりも速く、軽く、使いやすくなっています –

答えて

0

私は私はあなたが達成しようとしているかを理解100%わからないんだけど、私はあなたがブラケットの構文を探している考える

this["TweenAX" + circle.current.arrowHead.count] = new Tween(circle.current.arrowHead, "_x", mx.transitions.easing.Strong.easeOut, circle.current._x, Stage.width/2, 2, true); 
this["TweenAY" + circle.current.arrowHead.count] = new Tween(circle.current.arrowHead, "_y", mx.transitions.easing.Strong.easeOut, circle.current._y, Stage.height/2, 2, true); 

これはTweenAXNNcircle.current.arrowHead.count

の値であるTweenAYNという名前this上の2つのプロパティを作成します。