这不是AS3: add event listener to loaded swf的完全重复,实际上它似乎是非镜像解决方案的镜像情况..
我有一个测试flash文件,它在第一帧的动作中注册自己的监听器。
trace("it's going to be OK");
stage.addEventListener(KeyboardEvent.KEY_DOWN, aKey);
不幸的是,当.swf加载到另一部电影中时,这两行都不起作用。
假设stage
对象在这种情况下是错误的,应该使用哪个对象来获取监听器?
是否有必要在父swf中重写加载器,如链接问题中所述?
答案 0 :(得分:1)
在您正在加载的SWF中尝试此操作:
addEventListener(Event.ADDED_TO_STAGE, onAdded);
function onAdded(e:Event):void
{
stage.addEventListener(KeyboardEvent.KEY_DOWN, onKey);
}
function onKey(e:KeyboardEvent):void
{
trace('key down');
}