Hello,
I made a class that subclasses Loader and when I try to call the removeChild method it says that Loader doesn’t implement that particular function. However when I look in the docs it says that removeChild is an inherited method. I thought maybe I was providing the wrong parameter but I’m just passing a movieclip to the removeChild method so I really don’t know what could be wrong. Here’s the code (note that Preloader subclasses movieclip):
package
{
import flash.display.Loader;
import Preloader;
import flash.display.LoaderInfo;
import flash.events.Event;
import flash.events.ProgressEvent;
public class ImageLoader extends Loader
{
private var preloader:Preloader; //preloader shown for image being loaded
public function ImageLoader(w:int,h:int)
{
preloader=new Preloader(w,h);
this.contentLoaderInfo.addEventListener(Event.INIT,addLoaderListeners);
}
private function addLoaderListeners(e:Event):void
{
e.target.addEventListener(Event.OPEN,showPreloader);
e.target.addEventListener(ProgressEvent.PROGRESS,showProgress);
e.target.addEventListener(Event.COMPLETE,showLoadResult);
}
private function showPreloader(e:Event):void
{
addChild(preloader);
}
private function showProgress(e:Event):void
{
preloader.update(e.target.bytesLoaded,e.target.bytesTotal);
}
private function showLoadResult(e:Event):void
{
removeChild(preloader);
}
}
}