【发布时间】:2010-06-06 21:12:54
【问题描述】:
我正在使用 FlashDevelop 创建我的第一个 AS3,但我不明白构造函数中指令的含义:
package
{
import flash.display.Sprite;
import flash.events.Event;
public class Main extends Sprite
{
public function Main():void
{
if (stage) init();
else addEventListener(Event.ADDED_TO_STAGE, init);
}
private function init(e:Event = null):void
{
removeEventListener(Event.ADDED_TO_STAGE, init);
// entry point
}
}
}
if (stage) init(); 是什么意思?什么是 Event.ADDED_TO_STAGE?为什么要移除init() 中的监听器?
【问题讨论】:
-
我很惊讶这里还没有看到答案,所以在你等待的时候:如果你搜索“Event.ADDED_TO_STAGE”,你会得到一些有趣的阅读,我怀疑它会回答你的问题。 (我不确定,我不在 ActionScript 中工作;这就是为什么这不是答案。但链接看起来很准确。)在我看来,聚合效果是确保 @987654324 @ 仅在您的组件处于“舞台”时才被调用:如果您已经是,则立即调用它。如果不是,则为在您上台时触发的事件连接一个侦听器(然后在调用时将其删除)。
-
只有一个答案,但很好:)
标签: flash actionscript-3