新聞中心
本文和大家重點討論一下常見Flex組件用法,比如說Construction,它是Flex組件構造階段,F(xiàn)lex組件的構造器不能有必須的參數(shù)。在構造函數(shù)中可以添加事件監(jiān)聽器,初始化屬性。這個階段只做很少的事情。

10多年的那曲網(wǎng)站建設經(jīng)驗,針對設計、前端、開發(fā)、售后、文案、推廣等六對一服務,響應快,48小時及時工作處理。成都營銷網(wǎng)站建設的優(yōu)勢是能夠根據(jù)用戶設備顯示端的尺寸不同,自動調(diào)整那曲建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設計,從而大程度地提升瀏覽體驗。創(chuàng)新互聯(lián)從事“那曲網(wǎng)站設計”,“那曲網(wǎng)站推廣”以來,每個客戶項目都認真落實執(zhí)行。
Flex組件
Construction
Construction是Flex組件構造階段,F(xiàn)lex組件的構造器不能有必須的參數(shù)。在構造函數(shù)中可以添加事件監(jiān)聽器,初始化屬性。這個階段只做很少的事情。
Configuration
Configuration是Flex組件的配置階段,F(xiàn)lex組件的屬性,事件回調(diào)函數(shù),樣式和效果定義都在這個階段完成。你不應該把這些任務推遲到Attachment和Initlization階段之后。
Attachment
Attachment階段是把該Flex組件追加到顯示列表當中,一個Flex組件會被一個Flex容器IContianer以addChild方法添加到顯示列表當中。
Initlization
在Initlization初始化階段,F(xiàn)lex組件會執(zhí)行一次完整的invalidation/validation周期。這個階段做的工作流程是:
◆發(fā)出preinitialize事件。
◆執(zhí)行方法createChildren()
◆發(fā)出initialize事件。
◆執(zhí)行一次完整的invalidation/validation周期。
◆發(fā)出creationComplete事件。
Updating
用戶可能會與Flex組件產(chǎn)生交互,F(xiàn)lex組件的位置大小可能改變,樣式可能被重新賦值,也可能獲得焦點或者被禁用等等。這些情況的發(fā)生都用影響到Flex組件外觀的變化。所以Flex組件需要重繪自身來響應這些變化。
Invalidation
如果一個Flex組件的屬性改變,它可能就會標記Flex組件為失效狀態(tài)。
Validation
一個Flex組件被標記失效后,會驗證是否需要更新Flex組件,如果需要會調(diào)用相關的方法來更新。Flex組件有三個極其重要的方法來更新自己:
◆commitProperties()
◆measure()
◆updateDisplayList(unscaledWidth,unscaledHeight)
除了這三個方法,還有一個重要的方法是styleChanged(styleName),當某個樣式改變時,styleChanged被調(diào)用,然后執(zhí)行Invalidation標記Flex組件。如果你有自定義一個Flex組件,有一些法則必要得遵守:
不要在子類中顯式調(diào)用commitProperties,measure和updateDisplayList這三個方法,你要做的是override,而不是call。如果你添加了新的樣式,同樣是要繼承styleChanged方法,加入自己的邏輯。
Detachment
當不需要這個Flex組件時,把它從顯示列表中移出。把Flex組件從一個容器中移出再添加到另一個容器中比創(chuàng)建新的Flex組件有更小的開銷。
GarbageCollection
如果Flex組件不再被引用時,它就成為符合垃圾回收的對象了,所以垃圾回收的第一條準則是不再有活動的引用。
更加值得注意的是第二條準則,即不包含使用了強引用的事件監(jiān)聽器,Dictionary和Timer。
所以盡量使用弱引用是多么重要,但是同樣,小心你的弱引用在不該回收的時刻被回收了。例如對函數(shù)中的臨時變量使用弱引用,你可能得不到你想要的異步結果。
標題名稱:常見Flex組件大全
本文網(wǎng)址:http://www.5511xx.com/article/dhphggp.html


咨詢
建站咨詢
