Event.REMOVED和Event.REMOVED_FROM_STAGE有什么区别?
我想你的时候:
removeChild(mySpriteInstance);
例如,如果我在为垃圾收集器移除某个项目后尝试“清理”...我应该正在倾听:
Event.REMOVED
或
Event.REMOVED_FROM_STAGE
答案 0 :(得分:4)
即使displayobject不在舞台上,也会调用REMOVED:
var childA : Sprite = new Sprite();
var childB : Sprite = new Sprite();
childA.addChild(childB);
childA.removeChild(childB); // Event dispatched on childB
childA从未进入舞台显示列表,也不是childB。
编辑:
您总是可以在侦听器中使用弱引用(最后一个参数为true):
addEventListener(Event.REMOVED, onRemoved, false, 0, true);