Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Проблема с прелоудером (http://www.flasher.ru/forum/showthread.php?t=209467)

nikitos1980 13.11.2014 13:17

Проблема с прелоудером
 
Добрый день. Понимаю, что тема уже избитая и много есть информации, да и раньше прелоудер работал корректно, но сейчас появилась проблема и прошу помочь, кто сталкивался с подобным.
Есть основной SWF, назовем его 1.swf, и второй SWF - 2.swf. Первый большого размера и с начала загружаю второй SWF, он действует как прелоудер и лишь отображает проценты загрузки. Текст в нем отображаю как dynamic text.
Загружаю первый SWF по-обычному
Код AS3:

l = new Loader();
addChildAt(l, 0);
l.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, OnProgress);
l.contentLoaderInfo.addEventListener(Event.COMPLETE, function (e:Event) : void
{
        // TO DO                       
});
l.load(new URLRequest("http://01.swf"));
 
 
private function OnProgress(e:ProgressEvent) : void
{
        if (!l || !l.contentLoaderInfo || l.contentLoaderInfo.bytesTotal <= 0)
                return;
        var percent = Math.floor((l.contentLoaderInfo.bytesLoaded / l.contentLoaderInfo.bytesTotal) * 100);
        _loadContainer._loading.text = percent.toString() + "%";// Это изменение текста процентов
}

А теперь о проблеме. Загрузка работает, загружаемый SWF добавляется и проценты считаются. Но проценты "не бегут", то есть после начала загрузки как бы зависание и 100% отображается в момент полной загрузки SWF (который я загружаю с помощью лоудера). Я пробовал таймерами делать загрузку и ENTER_FRAME, но все равно, - зависание и потом добавляется загружаемый SWF и появляется 100%. Я работаю в Adobe Flash CS5.

dimarik 13.11.2014 14:22

nikitos1980, оформите код тегами [as3][/as3].

nikitos1980 13.11.2014 19:02

Судя по всему проблема связана с доступом к загружаемому извне SWF (из интернета). Попробую проверить на сайте.

in4core 13.11.2014 19:03

Цитата:

А теперь о проблеме. Загрузка работает, загружаемый SWF добавляется и проценты считаются. Но проценты "не бегут", то есть после начала загрузки как бы зависание и 100% отображается в момент полной загрузки SWF (который я загружаю с помощью лоудера). Я пробовал таймерами делать загрузку и ENTER_FRAME, но все равно, - зависание и потом добавляется загружаемый SWF и появляется 100%. Я работаю в Adobe Flash CS5.
Процент загрузки можно увидеть только в браузере, либо спец интсрументом CS после компиляции.
А по коду мягко говоря - полный п...ц - так нельзя, надо переписывать все.
1) Анонимные функции
2) проверки которые никогда не произойдут

nikitos1980 13.11.2014 21:20

С функциями все в порядке, я код кусками привел как пример, что использую PROGRESS и так далее.
Проблема была в том, что в загружаемом SWF (номер один 1.swf) не были прописаны
Код AS3:

Security.allowDomain("*")// домен моего сайта

Поэтому, судя по всему, l.contentLoaderInfo и работал некорректно
Сейчас все, кажется, заработало!


Часовой пояс GMT +4, время: 07:31.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.