我在课堂上遇到了 addChild() 的问题。
我有一个球类:
package {
import flash.display.Sprite;
import flash.display.MovieClip;
import flash.events.*;
import Achievement;
public class Ball extends Sprite {
//the image I want to add
var mc:MovieClip;
public function Ball() {
addEventListener(Event.ADDED, beginClass);
}
private function beginClass(event:Event):void {
mc = new BallImage();
addChild(mc);
}
}
}
其中BallImage是为 ActionScript 导出的库中的影片剪辑。
我像这样将它添加到 main 中:
import Ball;
var littleBall:Ball = new Ball();
addChild(littleBall);
littleBall.x=100;
littleBall.y=100;
图像加载得很好,我可以在屏幕上看到它。但我得到一个堆栈溢出错误。一切似乎都很好......所以我无法弄清楚问题是什么。
编辑:如果我将 addChild() 移动到Ball的构造函数,错误就会消失。还是不知道是什么意思。为什么我不能在加载时添加它?