Универсальный загрузчик данных для AS 3.0
Я написал класс, который решает 3 важные задачи:
- Позволяет массово загружать данные из сети и получать событие о загрузке всех данных
- Расширяем на разные типы данных, от jpg,png картинок, до xml и 3ds (хотя последний пока не поддерживается, но вы сами можете добавить нужные типы объектов). Внешне мы не видим отличия, хотя внутренне всё не просто.
- Прост в использовании, несмотря на внутренне сложную реализацию
Этот класс основан на использовании URLLoader
Использование очень простое:
var lib:Library=new Library();//Создаём библиотеку lib.add("model.xml",XML); //Добавляем любое количество внешних URL на ресурсы lib.add("img.png",Bitmap); Не забываем указывать класс, к которому требуется привести данные //...И так далее lib.addEventListener(lib.DONE,fun);//Событие конца загрузки lib.load();//Стартуем :) //...После наступления события DONE lib.data("model.xml") //Возвращает XML - объект lib.data("img.png") //Возвращает Bitmap, который можно добавлять в список отображения
Всего комментариев 23
Комментарии
10.03.2011 16:12 | |
10.03.2011 18:28 | |
Цитата:
И использовать Object - это как-то не по AS3, скорее AS2
|
10.03.2011 18:35 | |
@cleptoman иди воруй!
Цитата:
Расширения специально включаются в идентификатор.
|
10.03.2011 19:30 | |
В идеале действительно какой-нить ключ передавать, ключ ссылка, хоть и уникально, но не очень.
|
10.03.2011 19:51 | |
10.03.2011 20:02 | |
10.03.2011 20:18 | |
Цитата:
ой как удобно искать то )))
|
10.03.2011 22:26 | |
Цитата:
Всё в AS3 наследуется от Object
Цитата:
И использовать Object - это как-то не по AS3, скорее AS2
По сабжу: Цитата:
//<-- Можно расширить класс на загрузку других объектов
Цитата:
trace("тип данных " + loader._class + " не поддерживается для " + loader.url);
короче продолжать можно долго - НЕ ВЗЛЕТИТ Цитата:
if(progressBar){
progressBar.setProgress(bytesLoaded, bytesTotal); } Но елы палы, почему тип прогресс-бара *? Вы за заставляете пользователя забираться внутрь либы и смотреть какие поля там используются. Интерфейс IProgressHandler должен быть с методом setProgress. |
|
Обновил(-а) expl 10.03.2011 в 22:49
|
11.03.2011 14:43 | |
Я придерживаюсь мнения, что нужно два отдельных сервиса: 1) загрузчик файлов по их URL 2)Система ресурсов где каждому файлу, дано имя. И где контролируется процесс и время загрузки. (загружаются ресурсы до запуска программы или всё таки загружаются во время выполнения)
Второй сервис строится на основе первого. |
|
Обновил(-а) Rzer 11.03.2011 в 14:46
|
12.03.2011 14:30 | |
Цитата:
И где контролируется процесс и время загрузки
Все что может сделать движок - это обеспечить очередь с приоритетом и ограничение на количество одновременных загрузок, не? Можно всётки поподробнее? Цитата:
1) загрузчик файлов по их URL
Как по URL определяется какой загрузчик (URLLoader/Loader/..) выбрать, а главное каким парсером обработать загруженное для использования в приложении? Цитата:
2)Система ресурсов где каждому файлу, дано имя.
|
|
Обновил(-а) expl 12.03.2011 в 14:50
|
Последние записи от Jarproger
- Удобная работа с мышью и клавиатурой - класс Input.as (31.01.2012)
- Универсальный загрузчик объектов ver 2.0 (Library.as) (21.06.2011)
- Универсальный загрузчик данных для AS 3.0 (10.03.2011)
- Продвинутая работа с клавой в AS 3.0 (08.01.2011)