在AS3中设置动画片段的宽度/高度

时间:2013-03-01 18:00:54

标签: actionscript-3

我有这个Player类,它是一个movieclip, 我正试图从它设置它的宽度和高度,然后让它自己添加到舞台上, 但由于某些原因,无论我做什么,this.width都返回0并且设置大小只能从父类中运行..为什么会发生这种情况?

public class Player extends MovieClip {

    public var head:MovieClip = new Head_normal_front();

    public function Player(stage:Stage){
        this.addChild(head);
        this.width = 10;
        this.height = 10;
        stage.addChild(this);

    }

}

由于

1 个答案:

答案 0 :(得分:7)

尝试以下内容:

public class Player extends MovieClip {

    public var head:MovieClip = new Head_normal_front();

    public function Player(stage:Stage){
        this.addChild(head);
        this.addEventListener(Event.ADDED_TO_STAGE, onAddedToStage);
        stage.addChild(this);
    }

    private function onAddedToStage(e:Event):void
    {
        this.removeEventListener(Event.ADDED_TO_STAGE, onAddedToStage);
        this.width = 10;
        this.height = 10;
    }
}

在将显示对象添加到舞台后,您应该修改它们的宽度/高度。我可能会将stage.addChild(this)移到Player之外。