Flex有任何init(),destroy()方法。就像Servlet一样,init()方法将在Application初始化时运行,如果刷新页面也不会再次调用它。
答案 0 :(得分:2)
我建议不要使用initialize事件,而是使用creationComplete。所有UIComponent在完成构建自己及其子项时调度该事件。组件初始化后,此事件执行一次,有机会自行测量,执行布局并添加到舞台中。
<mx:Application ... creationComplete="init()"/>
<mx:Script>
private function init() : void {
... // put your initialization routine here
}
</mx:Script>
</mx:Application>
答案 1 :(得分:1)
所有flex组件(包括根“application”组件)都有一个“initlize”事件,您可以监听并处理它。
如果您希望它只运行ONCE,无论刷新,您都需要以某种方式存储变量,例如使用本地共享对象。这很容易做到:
private function onInit():void{
var appSO:SharedObject = SharedObject.getLocal("yourappdata");
if(appSO.size < 0){
//do your init code
appSO.data.initialized = true;
appSO.flush();
}
}