`

Flex 初始化过程

阅读更多

     首先介绍一下SystemManager. SystemManager是Flex应用的主控者, 它控制着应用窗口, Application实例, 弹出窗口, cursors, 并管理着ApplicationDomain中的类. SystemManager是FlashPlayer实例化的第一个类, 它存储了主应用窗口的大小和位置信息, 保存其子组件比如:浮动弹出窗口和模态窗口的痕迹. 通过SystemManager可以获得内嵌字体,样式和document对象.
自定义的可视化组件(UIComponent的子类)只有在调用过addChild()后, 才会有一个SystemManager赋给他们, 之前是Null. 所以在自定义可视化组件的构造函数中不要使用SystemManager.

通常, Application对象创建时, 发生如下事件:
1. 实例化Application对象
2. 初始化Application.systemManager
3. Application在初始化过程之前, 派发预初始化事件.
4. 调用createChild(). 此时, 所有应用组件被创建, 所有组件的createChild()被调用.
5. Application派发初始化事件, 表明所有的组件初始化完毕.
6. 派发creationComplete事件
7. Application对象添加到显示列表中
8. 派发applicationComplete事件

大多数情况下, 我们使用<mx:Application>来创建application对象, 但如果使用ActionScript来创建的话, 那么建议不要在application的构造函数中创建组件, 推荐在crateChildren函数中, 主要是从性能方面考虑.

Flash包含的是一个时间线上的多个帧, 而Flex的SWF只包含2个帧. SystemManager, Preloader, DownloadProgressBar和少量工具类都在第一帧, 剩下的包括应用代码/ 内嵌资源全都在第二帧中. 当Flash Player下载下载SWF时, 只要接收到第一帧内足够的数据, 就会实例化SystemManager, 由它来创建Preloader, 然后创建DownloadProgressBar, 这两个对象会察看剩余字节的传输过程. 当第一帧的所有字节传输完毕后, SystemManager发送enterFrame到第二帧, 然后是其他事件. 最后Application对象派发applicationComplete事件.

分享到:
评论

相关推荐

    关于Flex 初始化的research

    原因在于Flex组件的生命周期,尤其是初始化阶段的事件顺序。 Flex组件的生命周期包含多个关键阶段,这些阶段按照一定的顺序执行,确保组件的正确初始化和显示。主要阶段包括: 1. **PREINITIALIZE**:这是组件生命...

    Flex Application 初始化顺序

    Flex Application 初始化顺序是一个重要的概念,尤其对于开发Adobe Flex应用程序的开发者来说,理解这一流程能帮助他们更好地优化代码和管理应用程序的生命周期。Flex是基于ActionScript和MXML的框架,用于构建富...

    flex初始化页面修改,preloader

    首先,我们来理解一下`flex初始化页面修改`这一概念。当Flex应用启动时,它会加载所需的SWF文件和其他资源。初始化页面就是用户在等待这些资源完全加载之前所看到的界面。修改这个页面意味着我们需要定制这个加载...

    Flex启动与初始化

    本文将详细介绍 Flex 启动与初始化过程,包括 Flex 显示层级划分、SystemManager 的作用、加载器的实现、Flex 项目的载入等内容。 一、Flex 启动与初始化 Flex 启动与初始化过程是指 Flex 应用程序从启动到显示的...

    FLEX国际化

    总结,Flex的国际化是一个全面的过程,涉及资源文件的创建、管理、本地化设置以及在代码中的应用。通过合理地组织和利用这些资源,开发者可以构建出适应全球用户的应用程序。在Flex 4中,这些功能得到了加强和完善,...

    flex事件运行流程

    本文将深入探讨Flex事件运行流程,特别是与`mx:Application.applicationComplete`、`creationComplete`以及Flex应用程序初始化顺序相关的知识点。 首先,Flex应用程序的启动始于`preloader`阶段,系统管理器...

    flex学习笔记 flex学习总结 flex学习教程

    8. **Flex应用程序生命周期**:理解Flex应用从启动到关闭的整个过程,包括初始化、布局、渲染、事件处理等阶段,有助于优化性能和解决运行时问题。 9. **Flex性能优化**:学习如何通过优化组件使用、减少网络请求、...

    Flex模块化开发实例

    - **初始化**:模块加载完成后,会调用`initialize`事件。 - **创建**:当模块的根组件被创建时,触发`creationComplete`事件。 - **卸载**:通过调用`unloadAndStop`方法可以卸载模块,释放其占用的资源。 6. *...

    FLEX 系统管理器 SystemManager

    在初始化过程中,预初始化事件被派发,然后调用createChild()方法创建所有应用组件。初始化事件被派发,表明所有组件准备就绪。creationComplete事件表示组件创建完成,最后,Application对象被添加到显示列表中,...

    flex窗口最大最小化

    Flex布局允许开发者对容器内的子元素进行灵活的排版,通过调整子元素的大小和顺序,适应不同的屏幕尺寸和设备。关键属性包括`display: flex`用于开启Flex布局,`flex-direction`定义主轴方向,`justify-content`和`...

    Flex中方法调用顺序的思考

    一个Flex组件从创建到销毁的过程大致可以分为以下几个步骤: 1. **构造函数**:当组件被实例化时,其构造函数会被调用。这是设置初始属性和进行基本初始化的最佳时机。 2. **initialize**:在构造函数之后,组件会...

    flex 4 生命周期

    Flex框架的生命周期包括了组件的初始化、布局、绘制、更新和销毁等关键阶段。理解这些阶段对于优化代码、提升应用性能至关重要。在Flex 4中,Adobe引入了更高效的设计模式,如States和Effects,以更好地管理组件的...

    flex例子.flex源程序

    2. **Flex Component Lifecycle**: 每个Flex组件都有自己的生命周期,包括创建、初始化、显示、尺寸改变和销毁等阶段,理解这些阶段对于优化性能和处理用户交互至关重要。 3. **MXML**: MXML语法类似于XML,可以...

    flex lifecycle

    初始化阶段是指组件被创建到准备就绪的过程,在此过程中,Flex 自动执行了一系列操作来确保组件能够正常工作。 1. **预初始化 (Pre-initialization):** - 在此阶段,Flex 开始为组件分配内存并进行基本配置。 - ...

    Flex4 Life cycle

    在Flex4中,组件生命周期是指一个组件从创建到销毁的过程,这个过程包括了一系列的阶段,开发者可以在这些阶段中执行特定的任务,如初始化、测量、布局、绘制以及更新状态等。 Flex4引入了更加灵活的组件架构,称为...

    Flex3学习指南-是初学者学习Flex必备资料1

    11. **Flex应用生命周期**:从初始化、创建到销毁,Flex应用有一套完整的生命周期管理,理解这个过程对优化性能和资源利用至关重要。 12. **Flex与AIR**:Adobe AIR(Adobe Integrated Runtime)允许Flex应用脱离...

    flex代码格式化工具

    总之,Flex代码格式化工具是Flex和ActionScript开发者不可或缺的辅助工具,它通过自动化代码格式化过程,极大地提升了开发效率和代码质量。正确配置和使用这个工具,可以帮助开发者遵循最佳实践,保持代码整洁,从而...

    Flex中文帮助文档

    10. **Flex应用生命周期**:从初始化到销毁,Flex应用有明确的生命周期。理解这个过程对于优化性能和正确处理资源释放至关重要。 通过阅读和学习这个Flex中文帮助文档,初级用户将能够逐步熟悉Flex的基本概念,掌握...

Global site tag (gtag.js) - Google Analytics