Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Flash Приложения: AIR, Zinc и тд. (http://www.flasher.ru/forum/forumdisplay.php?f=94)
-   -   DisplayState у подгружаемой флешки (http://www.flasher.ru/forum/showthread.php?t=164827)

in4core 18.08.2011 22:33

DisplayState у подгружаемой флешки
 
Имеем флешку А :
Код AS3:

stage.scaleMode = 'noscale';
stage.align = 'top_left';

И флешку Б, с аналогичным кодом.
Загружаем флешку Б в А

Разговор идет о AIR (может быть это принципиально )

Пока флешка не загружена FULL_SCREEN ставится на ура. После загрузки, FULL_SCREEN отрабатывает на флешку Б, хотя вызывается на А.

Как это побороть? Мне нужно вызывать фулл скрин у обоих флешек раздельно ( по желанию у одной )

trng 18.08.2011 22:45

FULL_SCREEN может быть только у root stage (т.е. у приложения AIR).
у вызываемой из под Air флешки FULL_SCREEN быть не может (точнее может но в том смысле, что "размером с родительское приложение").

in4core 18.08.2011 22:52

Вот интересно, фишка такая :
изначально я гружу приложение ( не загружая флешку ) жму фуллскрин - окей все работает. Потом гружу флешку и добавляю ее в дисплей лист ( но оставляю visible = false ) Жму снова фулл скрин - получаю ошибку
Код:

[Fault] exception, information=TypeError: Error #1010: A term is undefined and has no properties.
Затем ставлю visible = true , добавляю в нее некоторые дисплей объекты ( внтури подгружаемой ) - жму фулл-скрин, - ошибок нет, но отработка фуллскрина такая, что действительно все открывается на полный экран, НО и подгружаемая флешка открывается на полный экран поверх приложения!!! Тоесть отрабатывают как будто 2 стейджа

trng 18.08.2011 23:00

Вобще-то у любого подгружаемого DisplayObject наследника MovieClip - свой stage.

dimarik 18.08.2011 23:04

Чуть поправлю. MovieClip наследник DisplayObject. И перенесу.

in4core 18.08.2011 23:42

Цитата:

Вобще-то у любого подгружаемого DisplayObject наследника MovieClip - свой stage.
Ну раз так поясните почему так происходит? и как правльно надо?

trng 19.08.2011 15:08

Цитата:

Ну раз так поясните почему так происходит? и как правльно надо?
"displayState" - это параметр stage, а не FlashPLayer. Поэтому:

ФлешкаА.stage.displayState = StageDisplayState.FULL_SCREEN; // это одно
ФлешкаБ.stage.displayState = StageDisplayState.FULL_SCREEN; // это другое

Кстати, возможно в твоем случае больше подойдет использование stage.fullScreenSourceRect
В хелпе достаточно подробно описано использование.

in4core 19.08.2011 16:30

trng
Спасибо конечно ( про хелп ), я все это прекрасно знаю. Но то, что вы написали это не так.
ФлешкаА.stage.displayState = StageDisplayState.FULL_SCREEN , пока не подгружен Б, все так как и должно быть.
После подгрузки, нажми ты на фуллскрин у первой, или у второй, не важно, эффект один - обе флешки открываются на полный экран. Хотя нажималось только на одну)

trng 19.08.2011 16:46

Флешка Б загружается обычным loader-ом?
(попробую у себя)

in4core 19.08.2011 20:54

Да обычным лоадером, с лоадер контекст


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

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