Actionscript 3 AS3:removeChild
所以,我终于让我的菜单工作,但我想删除当前剪辑,当你回到菜单。我原以为这样行得通,可惜不行。有什么办法让它工作吗?顺便说一下,我使用OOP,这是我的一个类Actionscript 3 AS3:removeChild,actionscript-3,oop,Actionscript 3,Oop,所以,我终于让我的菜单工作,但我想删除当前剪辑,当你回到菜单。我原以为这样行得通,可惜不行。有什么办法让它工作吗?顺便说一下,我使用OOP,这是我的一个类 import flash.display.MovieClip; import flash.events.Event; import flash.events.MouseEvent; public class MainClip extends MovieClip { var currentClip:MovieClip; p
import flash.display.MovieClip;
import flash.events.Event;
import flash.events.MouseEvent;
public class MainClip extends MovieClip {
var currentClip:MovieClip;
public static const MY_FINISHED_MAINGAME_EVENT:String = "my_finished_mainGame_event"
//constructor code
public function MainClip() {
backToMenu.addEventListener(MouseEvent.CLICK, openMainMenu);
}
function removeCurrent () {
currentClip = new MainClip;
removeChild(currentClip);
}
//terug naar het Menu
public function openMainMenu (event:MouseEvent):void
{
dispatchEvent(new Event(MY_FINISHED_MAINGAME_EVENT));
currentClip = new IntroClip();
addChild(currentClip);
currentClip.x=200;
currentClip.y=200;
}
}
这是您的主类(文档类)吗?如果是这样,文档类将被初始化并自动添加到显示列表中,您不需要使用new关键字创建它的新实例。即使您确实创建了它的新实例,您也尝试使用removeChild将其删除,但它从未添加到显示列表中,因此它将抛出错误。这与您在上一篇文章中遇到的问题相同。您应该只发送事件,并且在您的主类(Kikkers)中,侦听事件,删除当前剪辑并读取它。唯一需要引用currentClip的地方是在main类中。