0l3
21.10.2015, 19:03
Есть ли в AS3 альтернатива as2-метода _root.loadMovie("some.swf") ???
При портировании старого проекта с as2 на as3 столкнулся с проблемой:
У меня 2 swf-файла, один в книжном формате, второй в альбомном. Когда я из первого ролика перехожу на второй, формат второго не сохраняется, т.е его содержимое загружается в книжные размеры первого ролика. Как это победить? Нужно не загрузить содержимое второго в первый, а выполнить переход на новый swf.
Рабочий код на as2 был таким:
on (release) {
_root.loadMovie("page.swf");
}
Сейчас у меня на кнопке "Загрузки" такой код:
private function onMouseClick(e:MouseEvent):void
{
var loader:Loader = new Loader();
var url:URLRequest = new URLRequest("B.swf");
loader.load(url);
stage.addChild(loader);
}
Результат вот: клип A остается контейнером для клипа B =\
http://storage3.static.itmages.ru/i/15/1022/s_1445509081_5467784_d15870338b.png (http://itmages.ru/image/view/3119608/d1587033)
Добавлено через 19 часов 56 минут
Получается что loder'ом в моем случае пользоваться нельзя. Нашел это:
public function navigateToURL(request:URLRequest, window:String = null):void
Открывает или заменяет окно в приложении, которое содержит контейнер Flash Player (обычно обозреватель ).
Изменил настройки безопасности с локального на 'Доступ только в сети' и код:
private function onMouseClick(e:MouseEvent):void
{
//var loader:Loader = new Loader();
var url:URLRequest = new URLRequest("B.swf");
//loader.load(url);
//stage.addChild(loader);
navigateToURL(url, "_self");
}
В итоге B.swf не грузится и нет никаких ошибок =\
Когда возвращаю настройку безопасности на "Доступ к локальным файлам" и пишу navigateToURL(url), то клип B грузится в новом окне браузера, а мне нужен FlashPlayer так как программа локальная.
Создается впечатление что параметр "window:String = null" используется только для браузерного окна.. проблема осталась не решенной =\
Добавлено через 70 часов 27 минут
_______________
Решил проблему так: первый ролик скомпилил под as2, второй под as3 и все работает.
При портировании старого проекта с as2 на as3 столкнулся с проблемой:
У меня 2 swf-файла, один в книжном формате, второй в альбомном. Когда я из первого ролика перехожу на второй, формат второго не сохраняется, т.е его содержимое загружается в книжные размеры первого ролика. Как это победить? Нужно не загрузить содержимое второго в первый, а выполнить переход на новый swf.
Рабочий код на as2 был таким:
on (release) {
_root.loadMovie("page.swf");
}
Сейчас у меня на кнопке "Загрузки" такой код:
private function onMouseClick(e:MouseEvent):void
{
var loader:Loader = new Loader();
var url:URLRequest = new URLRequest("B.swf");
loader.load(url);
stage.addChild(loader);
}
Результат вот: клип A остается контейнером для клипа B =\
http://storage3.static.itmages.ru/i/15/1022/s_1445509081_5467784_d15870338b.png (http://itmages.ru/image/view/3119608/d1587033)
Добавлено через 19 часов 56 минут
Получается что loder'ом в моем случае пользоваться нельзя. Нашел это:
public function navigateToURL(request:URLRequest, window:String = null):void
Открывает или заменяет окно в приложении, которое содержит контейнер Flash Player (обычно обозреватель ).
Изменил настройки безопасности с локального на 'Доступ только в сети' и код:
private function onMouseClick(e:MouseEvent):void
{
//var loader:Loader = new Loader();
var url:URLRequest = new URLRequest("B.swf");
//loader.load(url);
//stage.addChild(loader);
navigateToURL(url, "_self");
}
В итоге B.swf не грузится и нет никаких ошибок =\
Когда возвращаю настройку безопасности на "Доступ к локальным файлам" и пишу navigateToURL(url), то клип B грузится в новом окне браузера, а мне нужен FlashPlayer так как программа локальная.
Создается впечатление что параметр "window:String = null" используется только для браузерного окна.. проблема осталась не решенной =\
Добавлено через 70 часов 27 минут
_______________
Решил проблему так: первый ролик скомпилил под as2, второй под as3 и все работает.