1
public class loadXML extends Sprite
{
public var xmlFileName:String;
public var urlL:URLLoader = new URLLoader();
public var urlR:URLRequest;
public var xml:XML = new XML();
public function loadXML(xmlS:String):void
{
xmlFileName = xmlS;
urlR = new URLRequest(xmlFileName);
urlL.addEventListener(ProgressEvent.PROGRESS, onProgressAction);
urlL.addEventListener(Event.COMPLETE, onLoadedAction);
urlL.addEventListener(IOErrorEvent.IO_ERROR, errorAction);
urlL.load(urlR);
}
public function onLoadedAction(e:Event):void
{
xml = XML(e.target.data);
//trace(xml);
}
public function onProgressAction(e:ProgressEvent):void
{
//trace("loading xml");
}
public function errorAction(e:IOError):void
{
trace(e.toString());
}
}
}
//主類加載XML文件使用AS3
package
{
import com.loadXML;
import flash.display.Sprite;
public class xmlFileView extends Sprite
{
public var xmlData:loadXML;
public function xmlFileView():void
{
init();
}
private function init():void
{
xmlData = new loadXML("list.xml");
var xmlF:XML = XML(xmlData);
//trace(xmlF.video[0].path);
}
}
}
在這裏,我實例化loadXML的類。但我無法訪問xml,y?我怎麼能做到這一點?
這是我的XML文件。
<?xml version="1.0" encoding="iso-8859-1"?>
<videos>
<video>
<path>video1.flv</path>
</video>
<video>
<path>video2.flv</path>
</video>
<video>
<path>video3.flv</path>
</video>
<video>
<path>video4.flv</path>
</video>
</videos>
eddited答案,希望我會幫你的。 –
@Jevgenij Dmitrijev'私人函數handleXMLLoaded(e:Event):void {}'* – Taurayi
修正了小錯誤,否則很好的答案 – shanethehat