我希望能够通过ActionScript将我在舞台上添加的所有内容转换为MovieClip。
所以我现在说:
stage.addChild(pic1);
stage.addChild(pic2);
其中pic1
和pic2
是我拥有的MovieClip的实例,
在此之后,我想通过代码将这两者一起制作成MovieClip,并能够访问该MovieClip对象。
答案 0 :(得分:1)
如果您正在寻找一种快速方式在舞台上重新拥有所有,无论您是否知道实例名称,您都必须遍历舞台上的所有孩子。< / p>
var myMovieClip:MovieClip = new MovieClip(); // the MovieClip to contain your children
var l:int = stage.numChildren; // how many things are on the stage
for (var i:int = 0; i<l; i++){ // loop through all of them
myMovieClip.addChild(stage.getChildAt(0)); //removes the bottom DisplayObject from the stage and adds it to your container
}
addChild(myMovieClip); //adds the complete MovieClip back to the stage;
答案 1 :(得分:0)
var newMC:MovieClip = new MovieClip();
newMC.addChild(pic1);
newMC.addChild(pic2);
答案 2 :(得分:0)
允许交互的容器,例如。点击检测
var sprite:Sprite = new Sprite();
sprite.addChild(pic1);
sprite.addChild(pic2);
根据上面的crooksy88回答,虽然我不确定在这种情况下使用MovieClip会带来什么好处
答案 3 :(得分:0)
Stage
和MovieClip
都继承自DisplayObjectContainer
,后者定义方法addChild()
。
这意味着您可以轻松创建MovieClip
并将其添加到舞台:
var container:MovieClip = new MovieClip();
stage.addChild(container);
然后将其他DisplayObject添加到:
container.addChild(pic1);
container.addChild(pic2);
操纵位置,比例,旋转和其他类似属性将影响容器的内容。