我想在完成动画后删除并重新添加/“重新启动” Main 类。我所有的动画都发生在 Main 中,并被添加到 Main 中的显示树中。Program.as 通过添加/删除 Main 来处理所有这些。如何finishNow()
在 Main.as 中运行该函数?一切正常,除了引发错误program.finishNow();
:
TypeError:错误#1009:无法访问空对象引用的属性或方法。
.fla 文件:
链接到 Program.as。
Program.as 文件:
package {
import flash.display.MovieClip;
public class Program extends MovieClip {
public function Program() {
startNow();
}
function startNow() {
var run:Main = new Main(this);
addChild(run);
}
function finishNow() {
removeChild(run);
var run:Main = new Main(this);
addChild(run);
}
}
}
Main.as 文件:
package {
import flash.display.Sprite;
public class Main extends Sprite
{
var stageHolder:Object;
public var program:Program;
public function Main(stageHolderTemp) {
stageHolder = stageHolderTemp;
trace(stageHolder);
someFunctionsThatDrawGraphics();
}
function callFinishFunction():void {
// how to call finishNow() function from Program.as file here?
program.finishNow();
}
}
}