`

UIComponent的生命周期(life cycle)

    博客分类:
  • Flex
阅读更多
写flex组件,了解UIComponent的生命周期(life cycle)很重要,尤其是初始化(initialization)的过程很复杂,贴个文件可以很容易看清这个顺序

文件如下:

package
{
import flash.events.Event;

import mx.core.UIComponent;
import mx.events.FlexEvent;

public class UILifeCycle extends UIComponent
{
    public function UILifeCycle()
    {
   super();
     trace("***[ constructor ]");
     
     //flash.events.Event
     this.addEventListener(Event.ADDED,onAdded);
     this.addEventListener(Event.ADDED_TO_STAGE,onAddedToStage);
     this.addEventListener(Event.REMOVED,onRemoved);
     this.addEventListener(Event.REMOVED_FROM_STAGE,onRemovedFromStage);
    
     //mx.events.FlexEvent;
     this.addEventListener(FlexEvent.ADD,onAdd);
     this.addEventListener(FlexEvent.REMOVE,onRemove);
     this.addEventListener(FlexEvent.PREINITIALIZE,onPreinitialize);
     this.addEventListener(FlexEvent.INITIALIZE,onInitialize);
     this.addEventListener(FlexEvent.CREATION_COMPLETE,onCreationComplete);
    
    }
   
    //flash.events.Event
    private function onAdded(eo:Event):void{trace(eo.toString())};
    private function onAddedToStage(eo:Event):void{trace(eo.toString())};
    private function onRemoved(eo:Event):void {trace(eo.toString())};
    private function onRemovedFromStage(eo:Event):void {trace(eo.toString())};
   
    //mx.events.FlexEvent;
    private function onAdd(eo:FlexEvent):void {trace(eo.toString())};
    private function onRemove(eo:FlexEvent):void{trace(eo.toString())};
    private function onPreinitialize(eo:FlexEvent):void{trace(eo.toString())};
    private function onInitialize(eo:FlexEvent):void{trace(eo.toString())};
private function onCreationComplete(eo:FlexEvent):void{trace(eo.toString())};

   override protected function createChildren():void{trace("***[ createChildren ]")}
   override protected function commitProperties():void{trace("***[ commitProperties ]")}
   override protected function measure():void{trace("***[ measure ]")}  
   override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void{trace("***[ updateDisplayList]")}
  
}
}

拖到舞台上发布就可以看到trace信息了

***[ constructor ]
[Event type="added" bubbles=true cancelable=false eventPhase=2]
[Event type="add" bubbles=false cancelable=false eventPhase=2]
[Event type="preinitialize" bubbles=false cancelable=false eventPhase=2]
***[ createChildren ]
[Event type="initialize" bubbles=false cancelable=false eventPhase=2]
***[ commitProperties ]
***[ measure ]
***[ updateDisplayList]
[Event type="creationComplete" bubbles=false cancelable=false eventPhase=2]
[Event type="addedToStage" bubbles=false cancelable=false eventPhase=2]
分享到:
评论

相关推荐

    【完美翻译】Flex组件的生命周期

    Flex组件的生命周期是Adobe Flex框架中一个至关重要的概念,它涉及到UIComponent类及其子类(如Button、Canvas等)在创建、初始化、显示和销毁过程中的各个阶段。深入理解组件生命周期有助于开发者更有效地管理组件...

    UIComponent.unitypackage

    UIComponent.unitypackage

    深入FLEX组件生命周期

    ### 深入理解FLEX组件生命周期 #### 一、引言 在FLEX开发过程中,深入了解组件的生命周期对于优化应用程序性能、确保组件正确响应用户交互至关重要。本文将详细解析Flex组件生命周期的主要阶段:初始化...

    UIComponent

    3. **生命周期管理**:UIComponent可能需要关注自身的生命周期,比如在何时创建、显示、隐藏或销毁。Kotlin的协程可以帮助我们优雅地处理这些生命周期问题,避免回调地狱。 4. **可观察性(Observability)**:为了...

    Flex组件生命周期[收集].pdf

    Flex组件生命周期是软件开发中关于Adobe Flex框架的重要概念,它涉及到UIComponent的创建、初始化、显示和销毁等各个阶段。Flex应用的根对象是SystemManager,这是一个Display Class,继承自flash.display.MovieClip...

    UICOMPONENT - 将 uicontrol 扩展到所有 Java 类:增强替换 uicontrol 和 javacomponent,接受所有 Java (Swing/AWT) 样式组件-matlab开发

    UICOMPONENT 旨在直接替代 Matlab 的内置 UICONTROL 和 JAVACOMPONENT 函数。 它接受 UICONTROL 接受的所有参数和样式,以及任何其他可显示的 Java (Swing/AWT) 组件类。 保留了 UICONTROL 的调用约定和语法以实现...

    jsf 详细 原理介绍 内容讲解

    在本文中,我们将深入探讨JSF的核心概念、组件、上下文和生命周期,帮助初学者理解其工作原理。 1. **JSF架构**: JSF的架构围绕组件模型、事件模型和请求处理生命周期展开。核心API包括多个包,如`javax.faces`、...

    MatlabGUI使用java组件无所不能-uicomponent.m

    MatlabGUI使用java组件无所不能-uicomponent.m 是不是曾经想做出漂亮的GUI 界面? 是不是曾经想在 Matlab GUI里面显示网页? 看看这个界面: matlab_java.png 所以,...

    jsf1.2 source code

    API提供了如`UIComponent`、`FacesContext`、`PhaseListener`等核心组件和上下文对象,它们构成了JSF生命周期的基础。开发者可以使用这些接口来创建自定义组件,实现监听器,以及处理请求和响应。 ### 2. `jsf-ri` ...

    itemStorage_as_class.rar_Flex xml_UIComponent_flex_flex 3_flex s

    This is a Flex UIComponent that can be used 谋n a FLEX 3 mxml application as component written in action script 3.0, provides you to create items that cab be filled from an XML or Query ResultSet or ...

    jsf-api-src.zip

    6. **Event and Phase Model**:JSF的事件处理模型允许组件间通信,而生命周期阶段模型定义了请求处理的顺序,包括恢复视图、应用请求值、处理事件、更新模型值和渲染响应等阶段。 通过分析`jsf-api-src.zip`中的源...

    UIComponent:自定义组件(空视图、标题、表单输入项、设置项、菜单项、按钮、文字)

    CustomComponent 自定义组件(空视图、标题、表单输入项、设置项、菜单项、按钮、文字) 继承于ConstraintLayout EmptyView 空数据视图-(图标加文字描述) 属性表格 name format description empty_title ...

    JavaServer Faces完全参考手册(JSF:Complete Reference)

    - **JSF 请求处理生命周期高度概述**:介绍了请求处理生命周期的基本流程,包括各个阶段的作用和执行顺序。 - **请求处理生命周期的各阶段**:具体解释每个阶段的功能,如恢复视图、应用请求值、处理验证等。 - **...

    flex开发自定义控件

    ### Flex开发自定义控件详解 Flex是一种强大的框架,用于构建高性能、丰富的互联网应用程序(RIA)。自定义控件是Flex开发中的一个重要方面,它允许开发者根据特定需求创建独特的UI组件,从而增强应用的功能性和...

    JSF工作原理 体系结构

    - **生命周期**:JSF 生命周期定义了从用户请求到响应的处理流程,包括初始化、应用请求值、处理验证、更新模型值、调用应用程序业务逻辑和渲染响应等阶段。开发者可以插入自定义的行为来影响这个过程。 3. **JSF ...

    Flex4自定义组件开发.pdf

    Flex4中的组件生命周期主要分为三个阶段:诞生(Birth)、生命期(Life)和死亡(Death)。这些阶段涉及不同的事件序列,这些事件序列决定了组件在其生命周期内的行为。 - **诞生阶段**:在这个阶段,组件被创建并...

    JSF书加API帮助文档

    它简化了前端和后端的交互,提供了丰富的组件库,以及事件处理和生命周期管理机制。JSF的核心概念包括组件、事件、转换和验证、生命周期以及可扩展性。 《JSF in Action》这本书是JSF领域的经典之作,它深入浅出地...

Global site tag (gtag.js) - Google Analytics