0

所以我终于让我的 Flash 应用程序工作并让它在网站上运行,但过了一段时间动态文本停止显示在字段中。该文件设置为每 5 秒循环一次,并且应该更新以显示工作人员正在播出以及当前正在播放的内容。该网站的链接是http://mischieffm.com/

var xmlData:XML = new XML();
var header:URLRequestHeader = new URLRequestHeader("pragma", "no-cache");
var theURL_ur:URLRequest = new URLRequest ("/stream/shout.xml?rnd=" + Math.random());
var loader_ul:URLLoader = new URLLoader(theURL_ur);
loader_ul.addEventListener("complete", fileLoaded);



function fileLoaded(e:Event):void
{
 xmlData = XML(loader_ul.data);

 show_txt.text = xmlData.SERVERTITLE;
 song_txt.text = xmlData.SONGTITLE;

}

这一切都在 cs6 flash pro 和 actionscript 3 中完成

4

1 回答 1

0

尝试这个:

        function fileLoaded(e:Event):void
        {
            loader_ul.removeEventListener("complete", fileLoaded);
            xmlData = new XML(loader_ul.data);
            if (xmlData.SONGTITLE && xmlData.SERVERTITLE)
            {
                show_txt.text = xmlData.SERVERTITLE;
                song_txt.text = xmlData.SONGTITLE;
            }
            else
            {
                show_txt.text = "Untitled artist";
                song_txt.text = "Untitled song";
            }
        }

注意:为了防止内存泄漏,请始终调用 removeEventListener("someEvent", someMethod); 在您的活动被派发后。有一些例外情况,但通常你应该一直这样做。

于 2013-07-08T22:14:20.103 回答