2012-09-16 58 views
1

我的意思是在主类文件:FlashDevelop中是否需要boildercode?

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 
} 

你就不能直行与会有什么一旦SWF完全加载运行,或者你需要的代码这一点呢?

+0

当然可以,这只是确保舞台对象在你做任何事情之前都会被填充。不需要,但更安全。大多数情况下,舞台已经填充到文档类中,因此在这种情况下,事件监听器将永远不会被附加。 – BadFeelingAboutThis

回答

0

问题是你不确定舞台是否存在,所以你不能在构造函数里面安全this.stage。它更加安全,可以等待添加到舞台上,尤其是当swf从另一个swf加载时。你可以删除侦听器,但它没有太多的开销,因为它被删除时添加,所以它是一个小马。