ADDED_TO_STAGE 多次被调用

var mca:MovieClip=new MCA();
mca.addEventListener(Event.ADDED_TO_STAGE,addStageEvent);
function addStageEvent(e:Event):void{
var mcb:MovieClip=new MCB();
mcb.addEventListener(Event.ADDED_TO_STAGE,addStageEvent2);
mca.addChild(mcb);
}
function addStageEvent2(e:Event):void{
trace("mcb");
}
 
this.addChild(mca);
 
如果按照 上面的写法  "mcb" 将会被打印 2 次 
一次 发生在 mca.addChild(mcb) 事件后
另一次发生在 this.addChild(mca); 事件后 
 
所以 在使用 ADDED_TO_STAGE 事件
要么在 ADDED_TO_STAGE 时间的回调方法里面 写一个 _stage 来判断 是否 已经添加到 舞台
要么 就要在 ADDED_TO_STAGE 时间触发后 删除 ADDED_TO_STAGE 时间
 
posted @ 2015-03-24 16:07  JaoYE  阅读(181)  评论(0编辑  收藏  举报