我可以在加载事件后添加eventListener吗?(似乎有效)



我正在执行以下代码

var myXMLURL:URLRequest = new URLRequest("config.xml"); 
    myLoader = new URLLoader(myXMLURL);  // implicitly calls the load method here
    myLoader.addEventListener(Event.COMPLETE, xmlLoaded); 
    myLoader.addEventListener(IOErrorEvent.IO_ERROR, errorHandler);

当你用URLRequest创建它时,URLloader就会执行。
我的问题是我在那个语句之后添加了一个事件监听器,它目前捕获了事件。完成事件,这在未来会继续工作吗?还是应该在调用load之前添加eventListeners ?

如果你担心这个问题,就不要加载构造函数。构造函数中的URLRequest是可选的。

那么这样做:

var myXMLURL:URLRequest = new URLRequest("config.xml"); 
myLoader = new URLLoader();
myLoader.addEventListener(Event.COMPLETE, xmlLoaded); 
myLoader.addEventListener(IOErrorEvent.IO_ERROR, errorHandler);
myLoader.load( myXMLURL );

这是我处理所有URLLoader的方式。我喜欢完全控制我的代码,所以在构造函数中不设置URLRequest给了我在我选择时调用load()的自由,以及在加载开始之前添加事件侦听器的选项。说实话,URLLoader允许在构造器中自动加载的事实一直困扰着我。这完全违背了Adobe在SDK中处理构造函数的方式。

相关内容

  • 没有找到相关文章

最新更新