FLEX程序初始化

1. 首先, 为第1帧加载足够的数据.
2. Flash Player通过创建SystemManager实例执行加载数据.
3. SystemManager命令Flash Player停止在第一帧.
4. SystemManager创建Preloader,
通过它创建DownloadProgressBar控件并显示在客户界面上.
5. Preloader开始从FLEX SWF(或外部SWF)加载其余数据.
一旦FLEX框架及程序代码数据加载, System Manager跳到第2帧并初始化Application实例.
1) 所有的RSL及相关类现在已加载[到ApplicationDomain];
注意加载的顺序就是app编译时定义的顺序.
2) 所有应用程序使用的类定义(视图, 逻辑等)先加载到第2帧.
注意这里, 在第一帧的preloader代码甚至可以在FLEX框架类加载前, 安装补丁到其中.
3) 这种技术就被叫做"monkey-patching", 会被用在后面提到的解密过程中.
6. 一旦Application实例创建, SystemManager设置
Application.systemManager指向自己,
之后你就可以访问SystemManager了.
7. Application在初始化处理开始前派发预初始化(preinitialize)事件.
8. Application继续创建内部实例.
application调用createChilden()方法.
这时每个应用的组件被构造并调用自己的createChilden()方法.
具体情况参考组件生命周期章节.
9. Application派发初始化(initialize)事件,
指明所有的组件已被初始化.当然, 此时所有的组件尚未布局.
10.最后,所有的子控件及容器被创建并设置大小及位置后,
Application就会派发creationComplete事件.
11.creationComplete事件派发后,
Preloader移除DownloadProgressBar 控件,
SystemManager将Application实例加到Flash Player的
显示列表中(Flash Player display list基本上是个树结构,
包含着可视及潜在可视对象,构成整个应用.
当向应用中添加或移除组件时,
基本上就是将它们从显示列表(display list)中添加或移除掉).
12.Application一旦添加到Flash Player显示列表中,
Application派发applicationComplete事件.
13.Application此时已被创建好并显示到屏幕上准备与用户交互了.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值