ActionScript 3 предоставляет нам отличный инструмент для загрузки всякой всячины (jpg, png, swf). И реализован он в виде класса Loader.
Для того чтобы получить к нему доступ, не забудьте добавить в ваш код строку:
import flash.display.Loader;
Loader или по-русски Загрузчик реализует массу полезных возможностей. Если вы активный ActionScript-программист, то частота его использования вам известна.
Поэтому актуальна некоторая его доработка, дабы упростить процесс и уменьшить объем нашего кода.
Далее по тексту пример класса расширенного загрузчика, который реализует следующие возможности.
- Загрузка начинается в момент создания объекта
- Стандартная обработка по завершении загрузки
- Стандартная обработка ошибки
package { import flash.display.Loader; import flash.events.Event; import flash.events.IOErrorEvent; import flash.net.URLRequest; public class XLoader extends Loader { public var loaded:Boolean; private var func:Function; public function XLoader(_path:String,_func:Function=null) { func = _func; contentLoaderInfo.addEventListener(Event.COMPLETE,onLoaded); contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR,onError); load(new URLRequest(_path)); } private function onLoaded(e:Event):void { loaded = true; //Запускаем функцию полученую при создании объекта if (func != null) { func(); } //Убиваем ожидание событий, чтобы не грузить оперативку contentLoaderInfo.removeEventListener(Event.COMPLETE,onLoaded); contentLoaderInfo.removeEventListener(IOErrorEvent.IO_ERROR,onError); } private function onError(e:IOErrorEvent):void { trace("XLoader Error: " + e.text); //Убиваем ожидание событий, чтобы не грузить оперативку contentLoaderInfo.removeEventListener(Event.COMPLETE,onLoaded); contentLoaderInfo.removeEventListener(IOErrorEvent.IO_ERROR,onError); } } }