What is the difference between Event.REMOVED and Event.REMOVED_FROM_STAGE?
What is the diff开发者_开发百科erence between Event.REMOVED and Event.REMOVED_FROM_STAGE?
I thought when you have:
removeChild(mySpriteInstance);
- that this removes the item from the stage...is there a different kind of removed??
For example, if I am trying to "clean up" after an item is removed for the garbage collector...should I be listening for:
Event.REMOVED
or
Event.REMOVED_FROM_STAGE
REMOVED is called even if the displayobject is not on the stage:
var childA : Sprite = new Sprite();
var childB : Sprite = new Sprite();
childA.addChild(childB);
childA.removeChild(childB); // Event dispatched on childB
childA was never in the stage display list, neither was childB.
Edit:
You can always use a weak reference in your listener (The last param as true):
addEventListener(Event.REMOVED, onRemoved, false, 0, true);
精彩评论