关于flash as3 返回值的不解!

来源:百度知道 编辑:UC知道 时间:2024/06/18 14:30:47
package
{
import flash.events.Event;
import flash.events.IEventDispatcher;
import flash.events.ProgressEvent;
import flash.events.IOErrorEvent;

import flash.net.URLRequest;
import flash.net.URLLoader;

public class LoadXML
{
private var request:URLRequest;
private var urlLoader:URLLoader;
private var savePath:String;
private var _getXML:XML;
public function LoadXML(pathStr:String):void
{
savePath=pathStr;
initView();
}
private function initView():void
{
request=new URLRequest();
request.url=savePath;
urlLoader=new URLLoader();
try
{
urlLoader.load(request);
}
catch (err:Error)
{
trace("load xml err "+err);
}
configureListeners(urlLoader);
}
private function configureListeners(dispatcher:IEventDispatcher):void

呵呵,很常见的毛病了。
首先,我们的load命令是异步的。也就是说,当你执行
var loadXML:LoadXML=new LoadXML("images.xml");
的时候,执行了load是没错,但是没有立即加载完成。
这时候你用loadXML.getXML肯定拿不到东西啦,因为还没有触发complete事件。
在进行深入讨论比较麻烦,你可以hi我再深入讨论

呵呵,很常见的毛病了。
首先,我们的load命令是异步的。也就是说,当你执行
var loadXML:LoadXML=new LoadXML("images.xml");
的时候,执行了load是没错,但是没有立即加载完成。
这时候你用loadXML.getXML肯定拿不到东西啦,因为还没有触发complete事件。

null其后没有可用的数据,数据读取在此结束.你看你所加载的对象是否有数据内容呢?