从XML填充现有数组

时间:2014-01-31 16:24:47

标签: xml arrays actionscript-3

我在所有地方搜索过,但找不到特别适用于我的答案。 我有一个AS3数组,当前在脚本中手动填充,其余的代码使用此数组执行某些操作。如何“转换”此数组以使用XML填充而不影响其余代码。 代码:

var my_info_array:Array = new Array("Info-pdf.swf", "Info2-pdf.swf");
//This first line I want to populate using XML without affecting the code below
var infoURLnow:Number = 0;
var myTimer2:Timer = new Timer(5000);
myTimer2.addEventListener(TimerEvent.TIMER, timerListener);
 function timerListener (e:TimerEvent):void{    
if(infoURLnow != totalInfo) {
    loadINFO();
} 
else {
    infoURLnow = 0;
    loadINFO();
}
}
myTimer2.start();
loadINFO();
function loadINFO(){
var infoLoader:Loader = new Loader();
var infoURL:String = my_info_array[infoURLnow];
var infourl:URLRequest = new URLRequest(infoURL); 
infoLoader.load(infourl);
info_kozel.addChild(infoLoader); 
infoLoader.x = 20;                                        
infoLoader.y = 20; 
infoLoader.scaleX = infoLoader.scaleY =1.25;
infoURLnow = infoURLnow +1;
}

这样的事情:

var data:XML = new XML();

var xml_Loader:URLLoader = new URLLoader();
xml_Loader.load(new URLRequest("Info.xml"));

xml_Loader.addEventListener(Event.COMPLETE, do_XML);

那么如何将上面的代码集成到do_XML函数中呢?

1 个答案:

答案 0 :(得分:1)

试试这个:

var xml:XML =
    <list>
        <link>Info-pdf.swf</link>
        <link>Info2-pdf.swf</link>
    </list>;

var my_info_array:Array=[];

xml..link.(my_info_array.push(text()));

trace(my_info_array) // Info-pdf.swf,Info2-pdf.swf