如何移除容器下所有子显示对象

容器中的子显示对象分为两类:
处于显示列表中的子显示对象。

1、被numChildren所记录的。
2、由容器graphics对象绘制出来的矢量图。这个矢量图不属于Shape类型,不在容器的显示列表中,不被numChildren所记录。而是做为容器的背景矢量图存在,始终处于最后面。
因此,准确的说,如果要移除容器下所有子显示对象,就要分别移除这两类对象。

var tf:TextField = new TextField;
tf.text = "======Hello,world========";
addChild(tf);
graphics.beginFill(0xF3E789, 1);
graphics.lineStyle(1, 0xFFFF00);
graphics.drawRoundRect( -5, -5, 100 + 15, 100 + 15, 10, 10);
graphics.endFill();

numChildren为1所以graphics的对象没有被记录下来现在移除对象:

removeChild(tf);后发现numChildren为0,还得加一句graphics.clear();

  

posted @ 2012-12-26 23:20  9筒  阅读(190)  评论(0编辑  收藏  举报