1

Вопрос по actionscript-3, flash – Как работает preloader в as3?

Я прочитал несколько примеров по этому поводу, но я просто нене понимаю, как это работает. * Как класс узнает, что этопредварительно погрузчик? * Как Flash узнает, чтобы загрузить один класс, но не другой? * Сколько я могу сделать в ...

2 ответа

2

Вы знакомы с временной шкалой Flash?

По умолчанию ваш SWF будет иметь один кадр. Этот фрейм содержит ваш класс Preloader.as. Во время компиляции FD создает второй фрейм, который содержит ваш главный класс - класс, который вы хотите запустить после загрузки всего SWF. Preloader.as содержит код, который ждет, пока все кадры не будут полностью загружены, а затем создает экземпляр класса Main.

Подробнее отhttp://www.flashdevelop.org/community/viewtopic.php?f=9&т = 5398:

Когда вы создаетеПроект AS3 с прелоадером »FD настраивает несколько важных вещей, которыми вы должны управлять:

  1. в Preloader.as, есть вызов для разрешения вашего основного класса: getDefinitionByName ("{квалифицированное имя основного класса} ")

  2. в свойствах проекта, параметры компилятора> Дополнительные аргументы компилятора [...] Должно быть: -frame start {квалифицированное имя основного класса}

Flash знает, что нужно запустить Preloader.as в первую очередь, потому что FD помещает его в первый кадр, а FD делает это, потому что класс Preloader был установлен в "Всегда компилировать (вы можете установить эту опцию самостоятельно, щелкнув правой кнопкой мыши по классу и выбрав "Всегда компилировать).

Вы можете делать все, что угодно, в preloader, но он выигралЗапустите любой его код, пока не загрузится все необходимое для предварительного загрузчика. Так что если вы сделаете предварительный загрузчик с 3-мегабайтным графическим файлом и индикатором выполнения, индикатор выполнения выиграет ».ничего не делайте, пока не загрузится весь образ!

1

В AS3 я использую только внешние предварительные загрузчики (они являются SWF), которые затем загружаются в мой основной SWF. Я уверен, что preloader SWF маленький, так как вы можетет действительно предзагрузчик. Существует класс Loader, который вы используете для загрузки в SWF и получения информации о нем (размер и т. Д.). Вы можете прослушивать события, чтобы получить эту информацию, а затем использовать ее для отображения индикатора выполнения и т. Д.

Так что прелоадер неЧто-нибудь, что представляет собой просто другой класс для выполнения работы, и вы говорите об этом, передав URL-строку String SWF, который вы хотите загрузить.

Опять же, preloader - это класс, вы можете делать в нем все, что захотите, но лучше всего уменьшить размер SWF-файла.

Для действительно хорошего учебника проверьтеhttp://www.gotoandlearn.com/play?id=85, Ли также имеет ссылку на файлы для скачивания.

Похожие вопросы