0

我编写了一些代码来检查来自 URL 的 XML,它在 Internet 连接存在时工作,但是当我手动禁用 Internet 以测试错误对话框显示时,我无法使用try() catch().

try {
    var myXML: XML = new XML();
    var XML_URL: String = "https://drive.google.com/uc?export=download&id=0B5pkl4TJ7V0OTFBPanUyMWQxUnM";
    var myXMLURL: URLRequest = new URLRequest(XML_URL);
    var myLoader: URLLoader = new URLLoader(myXMLURL);
    myLoader.addEventListener(Event.COMPLETE, xmlLoaded);

    function xmlLoaded(event: Event): void {
        myXML = XML(myLoader.data);
        trace("LOCK CODE: " + myXML.LOCK);
        if (myXML.LOCK == 0) {
            gotoAndStop(71);
        };
    }
} catch (e: Error) {
    gotoAndStop(71);
    trace("FAILED TO CHECK LOCK.");
} finally {
    gotoAndStop(71);
    trace("FAILED TO CHECK LOCK.");
}

如何向用户隐藏此对话框?

4

1 回答 1

1

为 IOErrorEvent.IO_ERROR添加一个URLLoader 事件监听器,例如

myLoader.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler); 

function ioErrorHandler(event:IOErrorEvent):void { 
  trace("ioErrorHandler: " + event); 
}

无论如何,您都应该将所有事件作为良好的措施来处理(例如安全错误等)。as3 文档示例提供了一个有用的片段

理想情况下,您不仅会默默地跟踪消息,而且还希望显示有用的反馈或占位符内容,以便用户了解预期的内容。

于 2017-02-11T23:26:20.913 回答