2016-08-23 56 views
0

我有以下代碼工作完全內部的變量:AS3吐溫陣列

updaterVariable = 0; 
    Tweener.addTween(this, {time:2, transition:"linear", updaterVariable:1000, onUpdate:tweenerUpdate}); 

我將得到updaterVariable的值從0到補間1000 2秒。我的問題是,是否有類似的方式補間的變量中的陣列,例如:

updaterVariable[10] = 0; 
    Tweener.addTween(this, {time:2, transition:"linear", updaterVariable[10]:1000, onUpdate:tweenerUpdate}); 

我試圖上面的代碼,它的不工作。誰能幫忙?

回答

1

你可以通過你的陣列的搖擺人,並使用索引字段來進行更改:

updaterVariable[10] = 0; 
Tweener.addTween(updaterVariable, {time:2, transition:"linear", '10':1000, onUpdate:tweenerUpdate}); 

不知道該中間人您使用的,但是它的工作原理與TweenMax:

private var arr:Array; 
public function Main() { 
    arr = []; 
    arr.push(0); 
    arr.push(0); 
    arr.push(t); 
    TweenMax.to(arr, 1000, { '2' : 1000 }); 
    addEventListener(Event.ENTER_FRAME, onframe); 
} 
private function onframe(e:Event):void { 
    trace(arr[2]);//outputs expected numbers 
} 
+0

謝謝你的答案。但是如果我把一個像「i」這樣的變量放置在「10」的位置,它不會工作嗎?有什麼辦法解決它? –

+0

因爲我可能需要改變周圍的值,並且不能將索引作爲字符串傳遞。 –

+0

@AbhilashK,這取決於任務。你可以使用一個getter函數,比如'public function get i():int {return arr [10]; ''例如。問題是 - 爲什麼你需要使用一個數組進行補間,如果你知道你需要在特定索引處對一個變量進行補間? – www0z0k