![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|
|
|||||
|
Регистрация: Jan 2010
Сообщений: 2
|
Доброе время суток!
Занимался флэшем на делитантском как теперь понял уровне раньше. Тут нада сделать резиновый баннер, проблема в том, что элементы мувика уже анимированы и двигаются по центру баннера с фиксированной шириной. Нужно слева и справа поидее продлить черный фон у баннера(слева и справа от фикс. ширины). Пробовал поотдельности посчитать ширину и продлить фон квадратика слева и справа по примеру http://noregret.org/tutor/elastic/. Но не оч получилось, точнее ноль реакции вообще. Сейчас есть идея (если это возможно) объединить баннер в 1 мувиклип и закинуть его в другой баннер, в котором бы был черный фон, растягивающийся по горизонтали в зависимости от размеров окна и поверх него поцентру этот мувиклип который через AS тоже отцентровать. Следовательно вопросы: 1) Как запихнуть баннер в мувиклип(что то типа аналога Smart Object в Photoshop), назначить ему имя и возможно ли это? 2) Может есть какое-то другое более логичное решение? 3) Ниже приведу код, которым собираюсь организовывать это все, может там тоже что-то нада поправить: Stage.scaleMode = "noScale"; // создадим объект Listener1 = {}; // создадим метод onResize Listener1.onResize = function () { bg._width = Stage.width; clip._x = (Stage.width/2) - clip._width; } Stage.addListener(Listener1); Поиск юзал, искал не только на этом форуме(ключ: "резиновый") но и ... да где тока не искал. Буду очень благодарен за помощь и совет. Слой для AS создавал подо всеми слоями и в первом кадре писал этот код. Добавлено через 11 часов 21 минуту Поставим вопрос по-другому, я кидаю исходник уже готового баннера но с фиксированной шириной. Нужно поместить этот баннер на тянущийся в ширину фон по середине. Цена вопроса 10$. Добавлено через 33 часа 51 минуту Сделал сам, работает почти так как нада, но не совсем. При загрузке Флэш-баннера он не ратсягивается на 100%, а когда начинаешь менять ширину окна, Флэшка делает все как нада - центруется и продливает фон. Сделано по принципе который я опсиал выше: 1) я создал фон - это черный прямоугольник 2)поверх фона создал прозрачнй прямоугольник шириной на всю сцену(950пх), конвертил егов мувиклип,обозвал, и запихнул в него все что должно происходить по центру мувика. 3) Созда еще один слой в первом кадре AS-ом оцентровал мувиклип с пункта №2 и растянул на ширину Stage.width черный прямоугольник. Почему так сранно работает? Как сделать что бы все что происходит у меня при изменении размеров окна происходило сразу же при загрузке Флэш-баннера? ![]() |
|
|||||
|
Регистрация: Jan 2010
Сообщений: 9
|
У меня такая же проблема, только я разворачиваю на весь экран командой fscommand("fullscreen",true);
и естественно все объекты растягиваются ![]() Как бы от этого избавиться и сохранить пропорции? |
|
|||||
|
Модрон-ветеринар
|
Цитата:
Используйте уменьшение масштаба / сокрытия нужных элементов при переходе в полный экран и восстановления до 100% других, ради которых полный экран и затевается. Я делал плеер, приведу пример оттуда. Это там реализован именно так, когда фильм раскрывается во весь экран. При этом при добавлении видеообъекта я задал ему область во всю сцену, а потом в нормальном режиме сократил до 40%. Когда идет раскрытие во весь экран, функция просто восстанавливает его масштаб до родного 100%. А поскольку при этом видеообласть занимала всю сцену (при монтаже так было сделано), то фильм просто стал занимать весь экран. При выходе из режима fullscreen область видео опять занимает 40% и при этом выглядит так, как было задумано в нормальном режиме. То есть принцип такой - создавайте все объекты так, как они будут выглядеть в режиме "во весь экран", а потом делайте им обратное масштабирование с уменьшением так, чтобы их размеры были как в нормальном режиме. Напишите аналогичную функцию, которая бы управляла масштабированием. Привожу код ради идеи. var stageListener:Object = new Object(); Stage.addListener(stageListener); stageListener.onFullScreen = fScreen; /// ОТРАБОТКА ПОЛНОГО ЭКРАНА //////////////////////////////////// function fScreen(bFull:Boolean) { if (bFull) { player_mc.video_cont._xscale = player_mc.video_cont._yscale = 100; } else { player_mc.video_cont._xscale = player_mc.video_cont._yscale = 40; } } fsb.onRelease = function() { Stage.displayState = 'fullscreen'; }; closefs_btn.onRelease = function () { Stage.displayState = 'normal'; }; Последний раз редактировалось mooncar; 19.01.2010 в 11:19. |
|
|||||
|
Регистрация: Jan 2010
Сообщений: 9
|
Цитата:
|
|
|||||
|
Регистрация: Jan 2010
Сообщений: 2
|
я полностью разобрался со своим вопросом, пришлось дописать еще одного слушателя и еще одну функцию для изменения рулика после загрузки.
|
|
|||||
|
Регистрация: Oct 2010
Сообщений: 12
|
Может выложить код слушателя и функции?
|
|
|||||
|
Кто знает как сделать, чтобы баннер растягивался в обе стороны только по ширине, а высота оставалась фиксированной? На сайте резиновая вёрстка, нужно как-то баннер растянуть, чтобы не смотрелся заплаткой.
|
|
|||||
|
Модрон-ветеринар
|
Попробуйте сделать на странице блок с шириной 100% и опубликовать в него флешку, ей также для публикации выставить 100% ширины.
Последний раз редактировалось mooncar; 26.01.2010 в 16:38. |
|
|||||
|
В том и вопрос: как сделать у флеша 100% ширины без изменения высоты? В настройках ширина в процентах не задаётся.
Добавлено через 7 минут Только не нужно советовать задать в поиске "резиновый" и давать ссылку на пример - http://noregret.org/tutor/elastic/ - в этом примере баннер просто растягивается на весь экран по высоте и ширине так, что все объекты деформируются. |
|
|||||
|
Регистрация: Feb 2010
Сообщений: 4
|
Цитата:
Видимо не до конца прочитали, там очень подробно написано как сделать 100% ширины без изменения высоты и наоборот. |
![]() |
![]() |
Часовой пояс GMT +4, время: 22:59. |
|
|
« Предыдущая тема | Следующая тема » |
|
|