как кодировать действие загрузки во флэш-памяти? - PullRequest
1 голос
/ 26 июня 2010

Я пытаюсь создать веб-сайт во флэш-памяти и хотел бы узнать, как создать загрузочный флэш-фильм, что-то вроде круга, вращающегося до загрузки сайта. Возможно, я не смогу объяснить должным образом, но это похоже на то, когда вы устанавливаете программное обеспечение, панель установки, которую вы получаете, как получить это на веб-сайте, используя flash или java-скрипт?

Ответы [ 2 ]

1 голос
/ 26 июня 2010

Хорошо, так что вам нужен предварительный загрузчик (я предполагаю, что вы используете ActionScript 3.0). Это будет небольшой SWF-файл, который загружает ваш основной файл Flash. Самые маленькие реализации (например, следующие) составляют около 1-2 КБ

Итак, в вашей Flash IDE (Flash CS3, CS4, CS5) вы хотите создать новый fla, назовем его preloader.fla. В этом файле вы захотите иметь два слоя. Назовите первый слой как действия, а второй слой как контент.

В вашем слое контента просто поместите динамическое текстовое поле на сцену. Назовите его TXT / процент или что вы чувствуете ... Я использую TXT.

В вашем слое действий вы хотите выбрать первый ключевой кадр и открыть панель действий (код)

Затем вы хотите использовать класс загрузчика для загрузки внешнего файла (вашего основного флэш-фильма) следующим образом

var ldr:Loader = new Loader();

Для обработки анимации и так далее вы захотите прослушать ProgressEvent. Вы будете делать это, слушая информацию о загрузке в contentLoaderInfo следующим образом

ldr.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, update);

Таким образом, когда данные вашего основного файла загружаются, это событие вызывается. «update» будет функцией, которую мы будем вызывать для обработки прогресса в данных.

Следующее событие для прослушивания будет после завершения загрузки основного файла, и мы хотим его отобразить.

ldr.contentLoaderInfo.addEventListener(Event.COMPLETE, display);

Затем у нас есть функция display, которая обрабатывает завершение и отображает основной файл.

Последнее, что нужно сделать, это загрузить контент, например, main.swf.

ldr.load(new URLRequest("main.swf"));

Здесь у нас будет текстовое поле, показывающее загрузку байтов от 0 до 100%;

function update(e:ProgressEvent):void {
    var percent:Number = e.bytesLoaded / e.bytesTotal;
    txt.text = Math.ceil(percent*100).toString();

}

Ниже приведена функция, которая удаляет текстовое поле (txt) и добавляет main.swf в список отображения.

function display(e:Event):void {
    removeChildAt(0);
    txt=null;
    addChild(ldr);
}

Теперь вы можете изменить текст в слое контента на что-то другое, если вы хотите, например, как вы сказали, вращающийся круг ... зависит от того, как вы хотите, чтобы он отображался, поэтому я разместил несколько ссылок ниже, по которым вы можете следовать. Приветствия.

Пример 1: [ Демо ] [ Исходный код и файлы ] Пример 2: [ Demo ] [ Исходный код и файлы ]

0 голосов
/ 26 июня 2010

Если вы просто хотите, чтобы круг вращался до загрузки сайта, , пожалуйста не используйте вспышку.

У вас должен быть только анимированный GIF, который ждет загрузки страницы, затем исчезает и показывает содержимое, когда все загружено.

Анимированные GIF-файлы полностью поддерживаются во всех браузерах и будут составлять примерно 1/100 размера флэш-анимации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...