Flash AS3 XML Listener бесконечный триггер - PullRequest
0 голосов
/ 07 июля 2011

Я пытаюсь прочитать файл XML и отобразить его содержимое в виде простого списка или на консоли. Проблема в том, что прослушиватель событий запускается в бесконечном цикле.

Код:

var myXML:XML;
var myLoader:URLLoader = new URLLoader();

myLoader.addEventListener(Event.COMPLETE, processXML);

myLoader.load(new URLRequest("/songs/songs.xml"));

function processXML(e:Event):void {
    myXML = new XML(e.target.data);
    trace(myXML.*);
}

XML-файл:

<?xml version="1.0" encoding="utf-8"?>
<Songs>
    <Song>Sleep Away.mp3</Song>
    <Song>Kalimba.mp3</Song>
</Songs>

Выход: <Song>Sleep Away.mp3</Song> <Song>Kalimba.mp3</Song> <Song>Sleep Away.mp3</Song> <Song>Kalimba.mp3</Song> <Song>Sleep Away.mp3</Song> <Song>Kalimba.mp3</Song> <Song>Sleep Away.mp3</Song> <Song>Kalimba.mp3</Song> <Song>Sleep Away.mp3</Song> <Song>Kalimba.mp3</Song> <Song>Sleep Away.mp3</Song> <Song>Kalimba.mp3</Song> <Song>Sleep Away.mp3</Song> <Song>Kalimba.mp3</Song> <Song>Sleep Away.mp3</Song> <Song>Kalimba.mp3</Song> <Song>Sleep Away.mp3</Song> <Song>Kalimba.mp3</Song> <Song>Sleep Away.mp3</Song> <Song>Kalimba.mp3</Song> <Song>Sleep Away.mp3</Song> <Song>Kalimba.mp3</Song> <Song>Sleep Away.mp3</Song> <Song>Kalimba.mp3</Song> <Song>Sleep Away.mp3</Song> <Song>Kalimba.mp3</Song> <Song>Sleep Away.mp3</Song> <Song>Kalimba.mp3</Song> <Song>Sleep Away.mp3</Song> <Song>Kalimba.mp3</Song> <Song>Sleep Away.mp3</Song> <Song>Kalimba.mp3</Song> <Song>Sleep Away.mp3</Song> <Song>Kalimba.mp3</Song> <Song>Sleep Away.mp3</Song> <Song>Kalimba.mp3</Song> <Song>Sleep Away.mp3</Song> <Song>Kalimba.mp3</Song> <Song>Sleep Away.mp3</Song> <Song>Kalimba.mp3</Song> <Song>Sleep Away.mp3</Song> <Song>Kalimba.mp3</Song> <Song>Sleep Away.mp3</Song> <Song>Kalimba.mp3</Song> <Song>Sleep Away.mp3</Song> <Song>Kalimba.mp3</Song> <Song>Sleep Away.mp3</Song> <Song>Kalimba.mp3</Song> <Song>Sleep Away.mp3</Song> <Song>Kalimba.mp3</Song> <Song>Sleep Away.mp3</Song> <Song>Kalimba.mp3</Song> <Song>Sleep Away.mp3</Song> ....

1 Ответ

1 голос
/ 07 июля 2011

Во-первых, это только на временной шкале IDE? Если это так, вам нужно добавить stop()?

Во-вторых, вы можете удалить слушателя из загрузчика, как только появится событие COMPLETE.

function processXML(e:Event):void {
    myLoader.removeEventListener(Event.COMPLETE, processXML);
    myXML = new XML(e.target.data);
    trace(myXML.*);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...