我正在尝试让后退按钮转到应用程序的第一个场景......我正在使用它......
stage.addEventListener(KeyboardEvent.KEY_DOWN, fl_OptionsBackHandler);
function fl_OptionsBackHandler(event:KeyboardEvent):void
{
event.preventDefault();
stage.removeEventListener(KeyboardEvent.KEY_DOWN, fl_OptionsBackHandler);
gotoAndPlay(1, "Scene 1");
stage.addEventListener(KeyboardEvent.KEY_DOWN, fl_OptionsBackHandler);
}
这有些可行。问题是当它返回到那个帧和场景时它不会执行那里的代码。我说过一些由as3制作的图形,但是当它返回时它不会绘制它们。当它进入下一个场景时我会删除它们。为了进入下一个场景,我在一个按钮上使用了一个监听器,它基本上转到了scene2并删除了我想要删除的子节点,因此它们不会继续到下一个场景。
另一个问题是,即使它回到场景1,我点击按钮进入场景2,场景2中的一些东西在场景2中呈现....不是一切,而是一些东西。知道什么可能是错的吗?
感谢。
答案 0 :(得分:1)
我不知道scene1
中有多少帧。但我确信如果您的代码位于scene 1
的第一帧中,您无法看到它,因为您没有停在那里而是将其播放到下一个(gotoAndPlay
)。因此,如果您想要查看动态更改,您应该停在那里(代码所在的位置)。
其他问题。 在AS3中,如果您在舞台中执行一些动态操作,如下所示,那么当您移动到另一个场景时,它将不会被删除。
我希望整个应用只有一个stage
。因此,无论我们处于什么场景,舞台中的对象始终都是可见的。