PDA

Просмотр полной версии : Управление загруженной swf-кой


Katyushka
24.03.2009, 20:20
Добрый вечер!

Возникла следующая проблема. Я загружаю swf-ку c сервера, содержащую видео. Пока она грузится показываю лоадер. Затем добавляю ее в <mx:Canvas>. Все хорошо работает, вот только если загрузка идет долго, я заметила,что видео в загружаемой свфке при отображении проигрывается с середины уже. Т.е. проигрывание начинается до конца загрузки. Необходимо это исправить. Гугл выдает множество советов и все они сводятся к тому чтобы грузить swf-ку в MovieClip и затем делать ему stop(). Пробовала в различные вариантах - не работает. :wacko: Думаю проблема вполне может быть в том что руки кривоваты... :confused: но уже замучалась.

Вот код как я загружаю:
private function createImageWithLoading(source:String, isFullScreen:Boolean):UIComponent
{
var image:Image = new Image();
preloaderTitleWindow(_preloadWindow);

image.load(source);
image.addEventListener(Event.OPEN,onOpenWithLoading);
image.addEventListener(Event.COMPLETE,onCompleteWithLoading);
image.addEventListener(ProgressEvent.PROGRESS,onProgressWithLoading);

return image;
}
protected function onProgressWithLoading(event:ProgressEvent):void
{

if ((_popupWindow!=null)&&(_popupWindow is IProgress))
{

IProgress(_popupWindow).progress(event.bytesLoaded,event.bytesTotal);
if (event.bytesLoaded == event.bytesTotal)
{
event.target.stop();
this.fullScreenContainer.addChild(event.target as DisplayObject);
this.imageLoadComplete(event);
}
}
}

<mx:Canvas width="550" id="fullScreenContainer" alpha="1.0"
verticalScrollPolicy="off" horizontalScrollPolicy="off" top="60" height="411" horizontalCenter="0"/>

AQUAFRESH
25.03.2009, 18:17
так а если сразу поставить стоп.. а потом плей на кнопку сдейлать оно будет загружаться сначал ?

Katyushka
03.04.2009, 14:29
Покопавшись поняла что проблема в том что загруженная сфка с видео грузится на один кадр,на нем и воспроизводится.. проблему решила. теперь вместо свфок с видео гружу просто видео .flv...

ulu
09.04.2009, 19:02
А не подскажете, как мне навесить stop() на символ в подгружаемой флешке? У меня не получается найти этот символ.

Пробовал
[Embed(source='/assets/clips.swf',symbol='clip1')]
private var clip_1:Class;
и
source="@Embed(source='/assets/clips.swf', symbol='mc_clip1')"

мне при компиляции говорят
definition for symbol 'mc_clip1' not found

Что надо сделать во флешке, чтобы это работало?