MXML組件可能相當複雜,包含許多嵌套控件,包括異步加載的內容,如Image/SWFLoader。如何判斷MXML組件何時完全創建完成?
有一個事件,我可以看我的組件時,每個控制和子組件加載後纔會被提出,包括主權財富基金和圖片?
MXML組件可能相當複雜,包含許多嵌套控件,包括異步加載的內容,如Image/SWFLoader。如何判斷MXML組件何時完全創建完成?
有一個事件,我可以看我的組件時,每個控制和子組件加載後纔會被提出,包括主權財富基金和圖片?
onApplicationComplete事件?
creationComplete事件應該做的 - 在子組件上調用creationComplete之後,在父組件上調用creationComplete。
你可以得到在Adobe docs組件的生命週期一些更多的信息。
在一些複雜的情況下,當你的組件被認爲是像「完成」,只有當某些數據已經通過HTTP或者類似的東西檢索,自定義事件是你最好的選擇。
如果您正在討論關於加載swf內容或任何類似外部的內容,CreationComplete將不會執行此操作。當MXML組件已按照MXML(IE嵌套組件,按鈕,框,畫布等)中的定義進行佈局時,CreationComplete被激發,因此需要在外部加載的內容(圖像,swf)不計算在內。
你需要做的是保持跟蹤你等待的一切,火了一次,所有這些元素都加載自定義事件。
這樣做的一種可能的方法是監聽每個元素的負載完成事件,然後讓它們回調到相同的函數,以增加一個等於您正在等待的組件數量的值。這意味着如果你修改它,你必須更加關注,但是這也意味着你不必檢查每個需要加載的元素的布爾值(IE「if if(image1Loaded & & image2Loaded & & swfLoaded)」etc )
我同意,做一個增量/減量計劃已經爲我工作。我對Image進行了子類化,並在它開始加載時以及加載完成時觸發冒泡事件。我把它們全部放在包含的組件中。 – 2008-11-09 22:57:38
嗨博克,快速問你關於這個職位。你會知道在組件創建之前是否可以執行HTTPservice請求? (從數據庫檢索一個變量作爲組件創建中的變量?)如果你知道,請讓我知道=) – Rees 2010-04-02 05:01:33