2012-12-15 72 views
0

是否可以使用已在舞臺上(或另一個動畫片段內)的Movieclips填充數組?將舞臺上的所有動畫片段添加到數組中?

E.g.如果「_level」是裏面更多的影片剪輯的電影剪輯,我想要做這樣的事情:

var currentClip:MovieClip; 
for (var i:int = 0; i < _level.numChildren; i++) { 
    currentClip = _level[i]; 
    ..... 
} 
+1

雖然這裏最大的問題是,「你爲什麼要這樣做」? :)在調試目的中,有很棒的工具可以讓你對舞臺上的所有東西,它們需要多少內存/ CPU等等有一個很好的看法。對於停止運行的每一部電影,最好是在遞歸的時候,數組中的每個mc。 –

回答

3

,你可以通過它們用循環的循環:

var array:Array=new Array(); 
for(var i:int=0; i < stage.numchildren ; i++) { 
    array.push(stage.getChildAt(i)); 
} 

,你可以做一個遞歸此功能讓孩子們等的孩子,如:

public var array:Array=new Array(); 
public function getChildren(do:DisplayObject){ 
    var arr:Array=new Array(); 
    for(var i:int=0; i < do.numchildren ; i++) { 
     getChildren(getChildAt(i)); 
    } 
    array.push(do); 
} 

和地方調用它:

getChildren(stage); 
+0

謝謝,但是這會將movieclip作爲displayobjects獲得。我如何將它們保存爲動畫片段?我希望能夠看到movieclip的屬性。 – Ashley

+0

movieclip擴展了displayobjects。你可以使用if(do是MovieClip){(做爲MovieClip)} – csomakk

+0

嗯..好的。所有的影片剪輯也從一個名爲「GameObject」的類擴展而來。有什麼方法可以訪問_level內所有動畫片段的GameObject類屬性? – Ashley

相關問題