Как обрабатывать загрузку данных в объектах в ActionScript 3 - PullRequest
0 голосов
/ 05 декабря 2010

Я кодирую веб-сайт на чистом AS3 с помощью FlashDevelop, и у меня есть объект, который загружает XML-файл в init.Есть ли хороший способ заставить мою основную функцию ждать, пока она не закончит загрузку?Я знаю о событиях onComplete и о том, как использовать их внутри объекта, но я не уверен, что делать дальше.

Заранее спасибо!

1 Ответ

1 голос
/ 05 декабря 2010
package
{
import flash.display.Sprite;
import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.events.Event;
import flash.events.IOErrorEvent;

public class HandleXMLData extends Sprite
    {
    private var xmlData:XML;
    private var XMLFileURL:String = "myXML.xml";

    public function HandleXMLData()
        {
        var xmlLoader:URLLoader = new URLLoader();
        xmlLoader.addEventListener(IOErrorEvent.IO_ERROR, errorHandler);
        xmlLoader.addEventListener(Event.COMPLETE, xmlDataHandler);
        xmlLoader.load(new URLRequest(XMLFileURL));
        }

    private function xmlDataHandler(evt:Event):void
        {
        evt.target.removeEventListener(IOErrorEvent.IO_ERROR, errorHandler);
        evt.target.removeEventListener(Event.COMPLETE, xmlDataHandler);
        xmlData = new XML(evt.target.data);

        init();
        }

    private function errorHandler(evt:IOErrorEvent):void
        {
        throw(evt.text);
        }

    private function init():void
        {
        //Initialization Routine
        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...