【发布时间】:2012-02-28 14:31:22
【问题描述】:
public class ItemView extends MovieClip {
private var _title:TextField;
private var _extra:MovieClip;
public function ItemView( ) {
setup();
return;
}
private function setup( ):void {
trace("ItemView::setup()");
_title = new TextField();
_title.text = "Title";
addChild(_title);
_extra = new MovieClip();
_extra.width = 200;
_extra.height = 40;
_extra.graphics.beginFill(0x0000ff);
_extra.graphics.drawRect(0, 0, 20, 20);
_extra.graphics.endFill();
addChild(_extra);
return;
}
}
当我创建ItemView 的实例并将其添加到舞台时,“标题”会显示,但蓝色方块不会。但是,如果我在this 而不是_extra 上调用graphics,我会看到蓝色方块。这告诉我 _extra 本身没有正确显示,但我不知道为什么。
我错过了什么?将MovieClip 添加到另一个MovieClip 是否有一些特殊程序?
【问题讨论】:
-
我不确定这是否能解决任何问题,但您几乎不应该在 IDE 之外使用 MovieClip。请改用 Sprite 类。 MovieClip 有很多无用的开销。
标签: actionscript-3 movieclip addchild