![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|
|
|||||
|
Регистрация: Jan 2012
Сообщений: 836
|
Всем привет. Всю голову уже сломал и так делал, и так, не получается что-то. В общем в цикле прогружаю определенные картинки
for (i = 0; i < item_len; i++) { slot = new Loader(); slotURLReq = new URLRequest('какой-то урлшник с картинкой'); slot.contentLoaderInfo.addEventListener(Event.COMPLETE, slot_complete); slot.load(slotURLReq); } private function slot_complete(e:Event):void { slot.contentLoaderInfo.removeEventListener(Event.COMPLETE, slot_complete); object_arr.push(slot); j++; if (j == item_len) { j = 0; for (var k:int = 0; k < object_arr.length; k++) { object_arr[k].x = 350 + k * 60; object_arr[k].y = 365; addChild(object_arr[k]); } object_arr.splice(0); } |
|
|||||
|
...
модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
|
Загрузить одну картинку, взять её битмапдату и работать с непосредственно с ней не подходит? Или url меняется в цикле?
|
|
|||||
|
В идеале код ужасен, очень ужасен, прямо ваще жесть.
Но я не буду ничего править, просто чтобы заработало может так? for (i = 0; i < item_len; i++) { slot = new Loader(); slotURLReq = new URLRequest('какой-то урлшник с картинкой'); slot.contentLoaderInfo.addEventListener(Event.COMPLETE, slot_complete); slot.load(slotURLReq); } private function slot_complete(e:Event):void { (e.currentTarget as Loader).contentLoaderInfo.removeEventListener(Event.COMPLETE, slot_complete); object_arr.push(e.currentTarget as Loader); j++; if (j == item_len) { j = 0; for (var k:int = 0; k < object_arr.length; k++) { object_arr[k].x = 350 + k * 60; object_arr[k].y = 365; addChild(object_arr[k]); } object_arr.splice(0); }
__________________
There is no thing in this world that is not simple. |
|
|||||
|
Регистрация: Jan 2012
Сообщений: 836
|
udaaffда, url меняется в цикле, в этом и запара.
ZackMercury не, так ваще не работает никак. Цитата:
НО, этот вариант меня не устраивает совсем, одна из причин - это качество картинки идет к чертям, а мне надо все эти картинки по битмапам раскидать, но чтобы закинуть их в битмап, сначала нужно отследить их загрузку. Чтобы потом расставить их грамотно, нужно отследить загрузку всех объектов) |
|
|||||
|
Цитата:
Ааа, секунду, неее, точно, currentTarget... Это contentLoaderInfo. Я подзабыл немного. В таком случае вот так: for (i = 0; i < item_len; i++) { slot = new Loader(); slotURLReq = new URLRequest('какой-то урлшник с картинкой'); slot.contentLoaderInfo.addEventListener(Event.COMPLETE, slot_complete); slot.load(slotURLReq); object_arr.push(slot); } private function slot_complete(e:Event):void { e.currentTarget.removeEventListener(Event.COMPLETE, slot_complete); j++; if (j == item_len) { j = 0; for (var k:int = 0; k < object_arr.length; k++) { object_arr[k].x = 350 + k * 60; object_arr[k].y = 365; addChild(object_arr[k]); } object_arr.splice(0); }
__________________
There is no thing in this world that is not simple. |
|
|||||
|
Регистрация: Jan 2012
Сообщений: 836
|
Спасибо) Вот так работает. Правда код все равно стремный, надо бы его как то переделать пограмотнее чтоль
|
|
|||||
|
Godwarlock, рекомендую не писать с бодуна код за 3 секунды, а хоть немного думать о красивой структуре.
Упор не в скорость а в красоту(элегантность), читаемость и порядок.
__________________
There is no thing in this world that is not simple. |
|
|||||
|
Регистрация: Jan 2012
Сообщений: 836
|
Цитата:
p.s Я еще конечно подумаю над вариантами. В прочем есть один на уме, сейчас попытаюсь его грамотно реализовать Добавлено через 20 минут private function add_slot():void { slot = new Loader(); slotURLReq = new URLRequest(MW.host_name + json_obj.error[i].url); slot.contentLoaderInfo.addEventListener(Event.COMPLETE, slot_complete); slot.load(slotURLReq); } private function slot_complete(e:Event):void { slot.removeEventListener(Event.COMPLETE, slot_complete); i++; bmp = slot.content as Bitmap; bmp.smoothing = true; bmp.x = 350 + i * 60; bmp.y = 365; slot_sprite.addChild(bmp); if (i < item_len) { add_slot(); }else { //Типо закончили скрипт } } Последний раз редактировалось Godwarlock; 20.06.2015 в 00:41. |
|
|||||
|
Регистрация: Jan 2012
Сообщений: 836
|
Откуда мне знать простому смертному о каких-то там "булклоадерах"?))
|
![]() |
![]() |
Часовой пояс GMT +4, время: 22:09. |
|
|
« Предыдущая тема | Следующая тема » |
|
|