Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   возможно ли управление загрузки в URLLoader (http://www.flasher.ru/forum/showthread.php?t=132647)

mrMEM 17.11.2009 15:04

возможно ли управление загрузки в URLLoader
 
Файлы подгружаются используя к примеру URLLoader

Есть ли возможность в AS3 приостонавливать и возобновлять загрузку файлов?

lighto 17.11.2009 15:31

хм интересно я тоже хотел бы узнать

etc 17.11.2009 17:37

Только остановить и начать заново качать.

SamFR 17.11.2009 17:43

Если вам нужно реализовать паузу, то нужно использовать URLStream. В этом случае сервак должен поддерживать докачку (то есть выдачу файла с определённой позиции).

Тогда, в момент паузы, запоминаем количество скачанных байт и останавливаем (URLStream.close()) загрузку. При продолжении, начинаем скачку заново, но в заголовках запроса указываем, что выдавать файл нужно с той позиции, что мы запомнили при паузе. Далее дописываем получаемые данные к тем, что были получены до паузы.

mrMEM 17.11.2009 19:08

спасибо огромное,
клевая штука этот URLStream

а как полученные данные перевести в вид BitmapData?
или XML?

SamFR 17.11.2009 19:46

Так в BitmapData или XML?

mrMEM 18.11.2009 14:10

меня интересуют оба варианта

Добавлено через 1 час 15 минут
Как я понял нужно получить ByteArray через

Код AS3:

var tmpByteArray:ByteArray;
var stream:URLStream = new URLStream();
stream.readBytes(tmpByteArray);

потом в BitmapData закинуть его через setPixels(rectangle, tmpByteArray)

не доходит до меня как определить rectangle?

Добавлено через 2 часа 39 минут
разобрался:

Код AS3:

var tmpByteArray:ByteArray = new ByteArray();
var stream:URLStream = new URLStream();
stream.load(url_загружаемого_файла);
stream.addEventListener(Event.COMPLETE, completed);
function completed(e:Event){
        trace("loaded");
        stream.readBytes(tmpByteArray);
        stream.close();
        var loader:Loader = new Loader();
        loader.loadBytes(tmpByteArray);
}


SamFR 18.11.2009 17:14

Ну вот, сами же и ответили =)

С XML-ем ещё проще: если загруженный текст представляет из себя валидный XML, то для преобразования его в XML-объект делаем
Код AS3:

var doc:XML = new XML(loadedXMLString);

где loadedXMLString – это строка, полученная из URLLoader или URLStream.

mrMEM 18.11.2009 18:33

спасибо, SamFR

теперь вот не могу еще разобраться с URLStream
завел тему: http://www.flasher.ru/forum/showthre...483#post866483

эту тему можно закрыть


Часовой пояс GMT +4, время: 11:18.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.