Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xml 捕获类型错误AS3时出现问题_Xml_Flash_Actionscript 3_Loader - Fatal编程技术网

Xml 捕获类型错误AS3时出现问题

Xml 捕获类型错误AS3时出现问题,xml,flash,actionscript-3,loader,Xml,Flash,Actionscript 3,Loader,嗨,我正在通过XML将图像和数据加载到flash中。由于各种原因,某些数据位缺少图像或根本没有图像。当图像URL为空时,flash返回消息TypeError:Error#2007:参数URL必须为非空。我一直试图用IO错误事件捕捉这个错误,但我不确定这是否是正确的方法,因为我似乎无法让它工作。这给我带来了一个问题,因为当我将项目添加到阶段时,数据与图像不匹配,一旦我能够捕获此错误,我想做的是将默认图像推送到_trackArray中,然后我将使用它将项目添加到阶段 private function

嗨,我正在通过XML将图像和数据加载到flash中。由于各种原因,某些数据位缺少图像或根本没有图像。当图像URL为空时,flash返回消息TypeError:Error#2007:参数URL必须为非空。我一直试图用IO错误事件捕捉这个错误,但我不确定这是否是正确的方法,因为我似乎无法让它工作。这给我带来了一个问题,因为当我将项目添加到阶段时,数据与图像不匹配,一旦我能够捕获此错误,我想做的是将默认图像推送到_trackArray中,然后我将使用它将项目添加到阶段

private function callTracks(): void {

        for (var i:Number = 0; i < _tracksTotal; i++){
                var _trackpicUrl = _trackImage[i];

                //trace(_trackImage[i]);

                var _trackpicLoader = new Loader();


                _trackpicLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, trackpicLoaded);
                _trackpicLoader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, loadError);
                _trackpicLoader.load(new URLRequest(_trackpicUrl));


                _trackpicLoader.name = i+1;


                _trackArray.push(_trackpicLoader);
                _containerMc.addChildAt(_trackpicLoader, _ringCounter);


    }

}

那么,为什么不在分配给
\u trackpicUrl
时测试该值是否为null呢

var _trackpicUrl:String;
if(_trackImage[i] == null) {
    //do whatever you need to handle the null
    _trackImage[i] = "myDefault.url";
}
_trackpicUrl = _trackImage[i];

那么,为什么不在分配给
\u trackpicUrl
时测试该值是否为null呢

var _trackpicUrl:String;
if(_trackImage[i] == null) {
    //do whatever you need to handle the null
    _trackImage[i] = "myDefault.url";
}
_trackpicUrl = _trackImage[i];

您没有捕获IOError,因为它从未到达load()。上面@shanetheat中的方法可以很好地填补空白,但是为什么不首先研究一下它为什么为null呢?是否动态生成XML?

您没有捕获到IOError,因为它从未到达load()。上面@shanetheat中的方法可以很好地填补空白,但是为什么不首先研究一下它为什么为null呢?您是在动态生成XML吗