正如你可以閱讀你的問題下面的評論,有幾種方法。
但實際上,你問「設置動畫片段的深度爲」的任何一個都不能在AS3中完成。如果我是正確的,你可以在AS2做到這一點,所以...
...又是怎麼回事......
_root.createEmptyMovieClip("mc", -1000);
或
_root.createEmptyMovieClip("mc1", 1);
_root.createEmptyMovieClip("mc2", 10);
工作,但不在AS3工作。在AS3中,深度從0開始,並且不能強制DisplayObject處於從零開始不連續的級別。
所以在容器3點的movieclip深處只可能與這些值:0,1,2
深度不能例如一個負數。
現在,如果你想建立一個自定義的深度管理器,你可以這樣做,但你必須考慮這些事實。
所以說,你可以創建虛擬深度。
所以我想你可以重寫addChildAt
方法。此刻,如果你給一個錯誤的號碼:陰性,或高於兒童人數,閃光燈會給後面的錯誤:
RangeError: Error #2006: The supplied index is out of bounds.
所以mc.addChildAt(newchild, -1000)
給出了一個arror。
但重寫該方法,你可以製作一個技巧,所以你可以將深度存儲在一個數組中。您可以存儲任何數字,然後轉換該順序以滿足AS3的需求。
就像將深度與添加的子元素配對一樣,按深度對數組進行排序,然後根據順序管理子元素。
如果您有更多的問題,請隨時提問,希望這能讓您更接近解決方案。
的addChild()方法從一個親本移動兒童至另一如果它已經在顯示列表中。還有swapChildren(),swapChildrenAt()和setChildIndex()方法可以幫助你管理這個。 – philipp 2011-05-11 05:46:41