Preloader для загрузки внешнего SWF без событий PROGRESS и COMPLETE - PullRequest
0 голосов
/ 27 мая 2011

Я создал следующий preloader, сохраненный как preloader.swf, который загружает внешний SWF-файл следующим образом:

var req:URLRequest = new URLRequest("main.swf");
var loader:Loader = new Loader();
loader.load(req);

loader.contentLoaderInfo.addEventListener(Event.OPEN, showPreloader);
loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, showProgress);
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, showContent);

var preloader:Preloader = new Preloader();

function showPreloader(event:Event):void 
{
    addChild(preloader);
    preloader.x = (stage.stageWidth / 2) - (preloader.width / 2);
    preloader.y = (stage.stageHeight / 2) - (preloader.height / 2);
}

function showProgress(event:ProgressEvent):void 
{
    var percent:Number = event.bytesLoaded / event.bytesTotal;
    preloader.percentage.text = Math.round(percent * 100) + "%";
    preloader.bar.width = 300 * percent;
}

function showContent(event:Event):void 
{
    removeChild(preloader);
    addChild(loader);
}

Я читал, чтобы попытаться избежать событий PROGRESS и COMPLETE, так как эти события не работают 100% времени.

Теперь мой вопрос таков: есть ли способ получить такую ​​же функциональность для загрузки внешнего SWF-файла (как описано выше), но БЕЗ использования событий PROGRESS и COMPLETE?

Если да, может кто-нибудь подсказать, какую кодировку добавить / изменить?

Спасибо.

1 Ответ

0 голосов
/ 27 мая 2011

Вы пробовали с таймером? Вы проверяете на каждом интервале, загружен ли SWF полностью или нет.

Однако события PROGRESS и COMPLETE должны работать всегда. Что не работает в вашем проекте?

...