Нужно динамически изменить размер отображения основной временной шкалы, чтобы он соответствовал размеру загруженного 3D SWF-файла, чтобы сохранить исходные 3D-свойства? - PullRequest
0 голосов
/ 16 декабря 2010

Проблема, с которой я столкнулся, заключается в том, что у меня есть основная «обертка» 100x100 (но она может быть любого размера) - она ​​просто предназначена для хранения и отображения любого содержимого, swf, gif и т. Д., Которое мы можем добавить в нее. , Пока загруженный контент не имеет 3D-анимации, например, вращение Y, он отображается нормально. Но когда это происходит, трехмерные свойства привязки (например, projectionCenter) загруженного SWF наследуют свойства основной временной шкалы (то есть 100x100 (основной) против 728x90 (загруженный)). Если я изменю размер основной «обертки» в Flash IDE, чтобы он соответствовал входящему - 3D работает нормально, но я не буду знать, какими будут размеры содержимого, пока не придет, поэтому мне нужен способ (если есть один) для динамического изменения основного «обертки» или корневого экранного объекта через AS. Такие вещи, как «this.width = loader.width» или «stage.width = loader.width» или «root.width = loader.width» и т. Д. Не работают. У Flex есть hBox и vBox - у AS есть что-нибудь?

1 Ответ

1 голос
/ 16 декабря 2010

Используйте ExternalInterface для вызова функции javascript в html-обёртке, это изменит размеры высоты / ширины вмещающего div, который оборачивает ваш .swf embd (Embed at width = "100%" и height = "100%" ") альтернативно используйте swfobject, чтобы получить дескриптор внедренного объекта и изменить свойства высоты / ширины, чтобы они соответствовали.

Затем вы можете присоединить слушателя Event.RESIZE и переместить ваши элементы, когда swf был изменен, чтобы соответствовать содержимому.

Это пример (хотя меняется только высота swf) http://www.markgriffo.com/scrollTest/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...