Skip navigation
Currently Being Moderated

unable to remove stage event listener from child swf

Apr 12, 2012 3:01 AM

Hi all I have made index swf which is loading other child swf's into index these swf's are images.swf, portfolio.swf, about.swf etc.., I have made 2 public function in each swf which is construct or diconstruct.

when i unload any swf then i play disconstruct public function of every child swf.. I stuck in when I remove stage event listener of every child swf then it shows error..


TypeError: Error #1009: Cannot access a property or method of a null object reference.

          at library_fla::MainTimeline/diconstruct()


here my diconstruct function of all child swf


function diconstruct(){

          stage.removeEventListener(Event.RESIZE, sizeListener);




how i delete stage event listener of every child swf..???? I feel it is showing error because it is trying to remove event listener from index.swf

  • Currently Being Moderated
    Apr 12, 2012 3:29 AM   in reply to Amit Shakya

    add trace statements to confirm which object is null.


    also do you remove these swfs from the displaylist before you deconstruct them?


    if so I think the stage property gets set to null (since they are not on the stage anymore)


    and so stage.removeEventListener won't work

    Mark as:
  • Currently Being Moderated
    Apr 12, 2012 4:33 AM   in reply to Amit Shakya

    if it's stage that's null then the object can't be in the DisplayList


    an alternative that by passes your problem but does not solve it


    when adding your stage.removeEventListener(Event.RESIZE, sizeListener);


    you could use


    stage.removeEventListener(Event.RESIZE, sizeListener, false, 0, true);


    this means the listener is eligible for garbage collection and you don't need to remove the listener

    Mark as:

More Like This

  • Retrieving data ...

Bookmarked By (0)

Answers + Points = Status

  • 10 points awarded for Correct Answers
  • 5 points awarded for Helpful Answers
  • 10,000+ points
  • 1,001-10,000 points
  • 501-1,000 points
  • 5-500 points