![]() |
Программное дублирование Loader
Перейду сразу к сути:
Создаю Loader, в него гружу внешнюю SWF с 3 кадрами. Дальше мне нужно создать три loadera. Чтобы отоброзить содержание 3 кадров. Теперь дабы исключить повторного запроса SWF мне нужно сделать копию основного Loadera и перейти на нужный кадр. С переходом на кадр теперь проблем нет. А вот сделать дубликат оказалось не просто, как я думал. Пробовал создать новый loader и c помощью loadBytes загрузить байты spTelo.loaderInfo.bytes Но почему то создалась копия всей флешки и буквально через секунды 3-4 флеш плеер рухнул.:eek: Буду благодарен если знающие такую проблему, подскажут, что делать нужно! |
- грузим ассет
- через getDefinitionByName() "достаем" класс необходимого клипа(для данной задачи) - создаем сколько угодно экземпляров, работаем с ними UPD: под ассетом подразмувается swf "библиотека"(файл), содержащая ресурсы, т.е. в данном случае, у вас в ней будет лежать, как нимимум, someClip, с соответствующим instance name. |
Не совсем понял про какой ассет идет речь. Можно хотя бы на вскидку код? Если Вас не затруднит конечно:) легче понять просто будет :)
P.S. Флешка подгружаемая без кода, исключительно графика. Добавлено: Мне дубликат Loadera нужен, а не клипа. И что то все не догоню причем тут библиотека... Объект создан динамически и загружен из вне. Теперь нужна его копия. |
Цитата:
Цитата:
Цитата:
|
Ну я думал понятно что копия Loader с содержанием его, а то какая же это копия :)
А по поводу классов я не очень силен пока, так что спасибо, что объяснили :) Буду очень благодарен за подсказку в виде кода примера :) |
Есть много способов.
Способ 1: Редактируем загружаемый мувик. У тебя, помню, он telo.fla назывался. Теперь назначаем всему ролику класс, скажем Telo, но файл класса создавать не надо, только имя дать. Теперь ролик-загрузчкик может его легко клонировать: Код AS3:
Код AS3:
|
Спасибо большое!!!! Второй раз выручаешь :) Первый способ, как раз то, что я и искал :)
|
Вложений: 1
Накидал примерчик Вложение 28979
В архиве FlashDevelop проект, в папке fla лежит исходник ассета(cs6), в котором хранятся ресурсы, в папке assets скомпилированный swf. Тестовая флешка загружает этот ассет, "получает" инстанс необходимого клипа, создает определенное кол-во необходимых ресурсов и добавляет их на сцену(код я откомментировал). В чем плюсы такого подхода?
данный код неидеальный вариант, но я надеюсь вам пригодится данный подход оффтоп: я бы не советовал, Вам, использовать подходы iflamberg. |
Большое спасибо! :)
|
По поводу первого способа подниму опять тему. Почему то на copy (var copy:MovieClip = new c (); )
Не вешаются слушатели, подскажите в чем дело? Что я упустил?:o |
Зашибись ты баги вылавливаешь =) Не должно быть такого. Надо думать. В загружаемой флешке Security.allowDomain("*") все еще стоит?
|
Да стоит :) Я тоже в тупиковой ситуации, даже на ум не приходит, что является причиной такого поведения, а точнее игнорирования слушателей.
На оригинале работают слушатели, в частности клики мышкой. Добавлено через 9 часов 21 минуту Может что то из-за класса (new c())? Может туда нужно добавить слушатели. Добавлено через 19 часов 10 минут Не ужели не кто не сталкивался с такой проблемой? :( какие вообще варианты могут быть причин такого поведения? Добавлено через 31 час 30 минут парни спасайте!!! как быть? |
| Часовой пояс GMT +4, время: 22:29. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.