Воспроизведение / пауза flash.display.avm1movie из flex - PullRequest
1 голос
/ 10 ноября 2010

Я использую swfLoader для загрузки внешних флэш-фильмов в коде flex / actionscript. Если загруженный SWF-файл был создан для более новых версий флеш-плеера (я полагаю, 9.0 или более), он загружается как объект flash.display.MovieClip, который имеет методы для воспроизведения / паузы и перехода к кадру. Однако, если загруженный SWF-файл был создан для более старого флеш-плеера (я считаю 6.0), он загружается как flash.display.av1movie, в котором нет методов воспроизведения / паузы. Есть ли способ воспроизвести / приостановить воспроизведение av1movie из своего гибкого кода.

Ответы [ 2 ]

3 голосов
/ 10 ноября 2010

Есть метод: ForcibleLoader .Это работает так - загружает SWF как ByteArray, затем модифицирует его и загружает результат с помощью loadBytes.Он устанавливает флаг as3 на true и версию swf на 9. Однако имейте в виду, что сценарии as2 не работают должным образом в AVM2, поскольку он имеет много отличий от AVM1.Но если у вас простая анимация, это может сработать.Вы получите MovieClip вместо AVM1Movie, просто протестируйте его.

1 голос
/ 10 ноября 2010

Нет, нет!

Из документов:

  The AVM1Movie object can use methods and properties inherited from the 
  DisplayObject  class (such as x, y, width, and so on). However, no 
  interoperability (such as calling methods or using parameters) 
  between the AVM1Movie object and AVM2 objects is allowed.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...