2010-04-15 61 views
0

對於從Document類以外的類派發,我有一個相當不錯的句柄,但是當我想從Document類派遣事件並讓其他類偵聽文檔類廣播時會發生什麼?AS3:如何從文檔類派發?

似乎有幾種方法可以解決這個問題(即,使用單曲,使用合成,使用MovieClip(root))我只是想知道人們發現什麼是「最佳實踐」方式?

回答

1

簡單:不要這樣做。

爲什麼不能告訴物體該做什麼?文檔類位於層次結構的頂部,它應該能夠直接操作對象。降低層次結構中的對象應該派遣,但不能降低。

1

我會做這樣的:

在文檔類:

 
public function attachEventListener(event:String, callback:Function) { 
    addEventListener(e, callback, false, 0, true); 
} 

如果你不希望其他類能夠訪問文檔類,我只想把 addEventListener(Event.MY_EVENT, someClass.eventListenerFunction, false, 0, true);在文檔類。

但顯然還有其他方法可以做到這一點。取決於你的偏好。

0

您應該將文檔類作爲參數傳遞給其他類構造函數。