<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    樂在其中

    以JEE為主攻,以Flex為點綴,以Eclipse RCP為樂趣
    請訪問http://www.inframesh.org

    首頁 新隨筆 聯系 管理
      43 Posts :: 0 Stories :: 8 Comments :: 0 Trackbacks

    Flex組件生命周期大概可以分為3步:

    1. Intiliazition
  • Construction
  • Construction是組件構造階段,組件的構造器不能有必須的參數。在構造函數中可以添加事件監聽器,初始化屬性。這個階段只做很少的事情。

  • Configuration
  • Configuration是組件的配置階段,組件的屬性,事件回調函數,樣式和效果定義都在這個階段完成。你不應該把這些任務推遲到Attachment和Initlization階段之后。

  • Attachment
  • Attachment階段是把該組件追加到顯示列表當中,一個Flex組件會被一個Flex容器IContianer以addChild方法添加到顯示列表當中。

  • Initlization
  • 在Initlization初始化階段,組件會執行一次完整的invalidation/validation周期。這個階段做的工作流程是:

    • 發出preinitialize事件。
    • 執行方法createChildren()
    • 發出initialize事件。
    • 行一次完整的invalidation/validation周期。
    • 發出creationComplete事件。
    2. Updating

    用戶可能會與組件產生交互,組件的位置大小可能改變,樣式可能被重新賦值,也可能獲得焦點或者被禁用等等。這些情況的發生都用影響到組件外觀的變化。所以組件需要重繪自身來響應這些變化。

  • Invalidation
  • 如果一個組件的屬性改變,它可能就會標記組件為失效狀態。

  • Validation
  • 一個組件被標記失效后,會驗證是否需要更新組件,如果需要會調用相關的方法來更新。組件有三個極其重要的方法來更新自己:

    • commitProperties()
    • measure()
    • updateDisplayList(unscaledWidth,unscaledHeight)

    除了這三個方法,還有一個重要的方法是styleChanged(styleName),當某個樣式改變時,styleChanged被調用,然后執行Invalidation標記組件。如果你有自定義一個組件,有一些法則必要得遵守:

    不要在子類中顯式調用commitProperties,measure和updateDisplayList這三個方法,你要做的是override,而不是call。如果你添加了新的樣式,同樣是要繼承styleChanged方法,加入自己的邏輯。

    3. Destruction
  • Detachment
  • 當不需要這個組件時,把它從顯示列表中移出。把組件從一個容器中移出再添加到另一個容器中比創建新的組件有更小的開銷。

  • Garbage Collection
  • 如果組件不再被引用時,它就成為符合垃圾回收的對象了,所以垃圾回收的第一條準則是不再有活動的引用。
    更加值得注意的是第二條準則,即不包含使用了強引用的事件監聽器,Dictionary和Timer。
    所以盡量使用弱引用是多么重要,但是同樣,小心你的弱引用在不該回收的時刻被回收了。例如對函數中的臨時變量使用弱引用,你可能得不到你想要的異步結果。

    posted on 2009-07-05 19:28 suprasoft Inc,. 閱讀(880) 評論(0)  編輯  收藏 所屬分類: RIA/Flex

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    ©2005-2008 Suprasoft Inc., All right reserved.
    主站蜘蛛池模板: 午夜成人无码福利免费视频| 亚洲一级毛片在线播放| 产传媒61国产免费| 亚洲麻豆精品国偷自产在线91| 亚洲精品福利你懂| 182tv免费视视频线路一二三| 亚洲av日韩av无码黑人| 久久国产乱子伦精品免费一| 4444亚洲国产成人精品| 亚洲免费观看网站| 日韩亚洲国产综合高清| 永久免费视频v片www| 色妞www精品视频免费看| 亚洲国产天堂久久久久久| 黄色网页在线免费观看| 亚洲人成在线播放网站| 日韩精品无码一区二区三区免费| 无码久久精品国产亚洲Av影片| 日本一卡精品视频免费| 亚洲欧洲日韩国产一区二区三区| 无码日韩人妻av一区免费| 亚洲精品美女网站| 国产男女猛烈无遮挡免费网站| 国产亚洲男人的天堂在线观看| 亚洲国产天堂久久综合| 国产亚洲免费的视频看| 亚洲精品在线播放| 国产成人在线免费观看| 成全视成人免费观看在线看| 久久久久亚洲av无码专区导航| 91手机看片国产永久免费| 亚洲hairy多毛pics大全| 亚洲精品色婷婷在线影院| 无码国产精品一区二区免费式芒果 | 精品少妇人妻AV免费久久洗澡| 国产成人+综合亚洲+天堂| 亚洲色精品88色婷婷七月丁香| 99精品在线免费观看| 亚洲s码欧洲m码吹潮| 久久久无码精品亚洲日韩蜜桃| 国产一卡二卡3卡四卡免费|