Класс flash.display.Loader используется для загрузки *.swf файлов, а так же для загрузки картинок(jpeg, gif и png), для начала загрузки используйте метод load(), загруженный объект добавиться в список детей экземпляра Loader, так же в данном классе есть свойство contentLoaderInfo ( экземляр класса flash.display.LoaderInfo ), которое содержит в себе данные, которые нам могут понадобиться для прелоадера (на самом деле свойства данного класса, могут дать нам практически исчерпывающую информацию о контенте, например версию ActionScript и тд).
package { //импортируем нужные нам классы import flash.display.Sprite; // это базовый класс для нашего root'а import flash.display.Loader; // в экземпляр данного класса будем грузить картинку import flash.display.LoaderInfo; // из экземпляра данного класса, будем брать информацию import flash.text.TextField; // в текстовом поле, будем отображать процесс загрузки import flash.text.TextFieldAutoSize; // тут константы вариантов значения свойства textField.autoSize import flash.net.URLRequest; // экземпляр данного класса, будет хранить в себе адресс картинки import flash.events.Event; // это событие import flash.events.ProgressEvent; public class Test extends Sprite { //создаем экземпляр Loader private var loader:Loader = new Loader(); //создаем экземпляр TextField private var loadStatus:TextField = new TextField(); //создаем экземпляр URLReques private var request:URLRequest = new URLRequest("img.jpg"); // конструктор public function Test() { //Начинаем загрузку loader.load(request); // подписываем обработчики события loader.contentLoaderInfo.addEventListener(Event.OPEN,displayPreloader); loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS,updatePreloader); loader.contentLoaderInfo.addEventListener(Event.COMPLETE,displayImage); } //наши обработчики событий private function displayPreloader(evt:Event):void { //добавляем текствое поле loadStatus.autoSize = TextFieldAutoSize.LEFT; addChild(loadStatus); } private function updatePreloader(evt:ProgressEvent):void { //изменяем информацию в процессе загрузки loadStatus.text = "loaded:"+evt.bytesLoaded+" from "+evt.bytesTotal; } private function displayImage(evt:Event):void { //удаляем текстовое поле, и добавляем само изображение removeChild(loadStatus); addChild(loader); } } }