![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
[+4 06.05.14]
|
Первый раз столкнулся с такой непонятной мне проблемой, есть класс имейдж лоадера, при выполнении функции load каждый раз закрывается loader, но толку ноль, вывожу пройцент загрузки = 150... N , потом появляется картинка 1,затем резко например 2, 4 - и становится на 3й ( при скоростном переключении по картинкам). Привожу код, вполне стандартный
public function ImageLoader($container:DisplayObjectContainer) { super(); this._cont = $container; } public function load(url:String = null , preloader:DisplayObject = null , loaderVars:Object = null ):void { _request = new URLRequest(url); _preload = preloader; _loader.contentLoaderInfo.removeEventListener(Event.COMPLETE , loadingDone); // от безисходности , все равно не помогает _loader.contentLoaderInfo.removeEventListener(ProgressEvent.PROGRESS , onProgress); try { _loader.close(); _loader.unloadAndStop(); } catch (e:Error) {} _loader.contentLoaderInfo.addEventListener(Event.COMPLETE , loadingDone); _loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS , onProgress); //_loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR , onError); _loader.load(_request); } private function onProgress(e:ProgressEvent):void { (_preload as ConeLoader).progress((Math.floor((e.bytesLoaded * 100 / e.bytesTotal))).toString()); // тут вывожу проценты, которые как и сказал при скоростном переключении переваливают за 100 } private function loadingDone(e:Event):void { _loader.contentLoaderInfo.removeEventListener(Event.COMPLETE , loadingDone); _loader.contentLoaderInfo.removeEventListener(ProgressEvent.PROGRESS , onProgress); this.dispatchEvent(new Event( ImageLoader.DONE )); if (_cont.numChildren) _cont.removeChildAt(0); _cont.addChild(_loader); }
__________________
Марк Tween |
|
|||||
|
1 видимо, не выполняется try catch.
2 заменить на не? 3 чисто докопаться: preloader isplayObject = null и рядом (_preload as ConeLoader).progress...что-то тут не так..интерфейсы не? проверка наличия экземпляра не?4 ну и последнее: а зачем этот класс?
__________________
http://cleptoman.free-lance.ru achivements: дважды благословлен на воровство. осеяный благодатью |
|
|||||
|
[+4 06.05.14]
|
Ну отвечу на все попорядку.
1, надо проверить на ошибку, займусь 2. Не. Потому что, unload выгружает контент, а не останавливает процесс загрузки. 3. Планировалось, что там будут разные прелоадеры, для теста используется один и тот же, потом перепишу корректнее. 4. Класс в котором используется он как подложка и так уже имеет порядка 500-700 строк, поэтому потихоньку все начал выносить, то что НАПРЯМУЮ к классу не относится. Добавлено через 1 час 12 минут никто не в курсе?
__________________
Марк Tween |
![]() |
![]() |
Часовой пояс GMT +4, время: 13:29. |
|
|
« Предыдущая тема | Следующая тема » |
|
|