2017-01-25 25 views
2

所以我的問題是函數內的跟蹤確實跟蹤了數組的第一個元素,但是如果函數沒有跟蹤外部跟蹤。我確實在函數外聲明瞭數組變量,但數據不會保存到數組變量。Actionscript 3:從文本文件中的每一行作爲數組中的元素

var oppgaveLoader:URLLoader = new URLLoader(); 

oppgaveLoader.load(new URLRequest("oppgaver.txt")); 
var oppgaveNr = 0 
//store line of text on an array called oppgaver 
var oppgaver:Array = [] 
var oppg:Array = new Array() 
oppgaveLoader.addEventListener(Event.COMPLETE, onLoaded); 

function onLoaded(e:Event){ 
    oppgaver = e.target.data.split(/\n/) 
    trace(oppgaver[0]) //This one traces the frist item in the array 
} 
trace(oppgaver[0])//This one does not trace the first one in the array 

有沒有人知道爲什麼和/或如何解決它,如果posible? 文件「oppgaver.txt」與我的.fla文件位於同一目錄中

文件「oppgaver.txt」是這樣排列的(文本是挪威語,但每行都將是一個物品):

Hvor gjelder forbudsskilt hvis ikke annet er oppgitt? 
Hvordan foretar du best mulig bremsing og unnastyring? 
Hvordan bør du normalt plassere bilen på en vanlig 2-felst vei? 

回答

1

這是一個同步性問題。

最後trace在設置數組後立即發生,但這些數組仍然是空的。

只有當onLoaded功能被調用時,asynchronouslyURLLoader,他們得到填充,你可以跟蹤他們的值。

事件監聽器基本上可以讓您對將來發生的事件做出反應。

+0

非常感謝,我設法做到這一點後,你讓我意識到這一點 –

相關問題