|
|
|||||
Регистрация: Jun 2006
Сообщений: 400
|
NO_SCALE для элементов из SWC
Подключаю из swc элементы интерфейса. У них режим масштабирования по умолчанию, show_all то бишь. Как сменить на NO_SCALE? Пробовал в основном клипе, куда addChild-ом добавляются все элементы делать такое:
private function addedToStage(e:Event):void { this.stage.scaleMode = StageScaleMode.NO_SCALE; scrollBarBackground.stage.scaleMode = StageScaleMode.NO_SCALE; bottomBtn.stage.scaleMode = StageScaleMode.NO_SCALE; topBtn.stage.scaleMode = StageScaleMode.NO_SCALE; scrollRectClip.stage.scaleMode = StageScaleMode.NO_SCALE; scrollRectTop.stage.scaleMode = StageScaleMode.NO_SCALE; scrollRectBottom.stage.scaleMode = StageScaleMode.NO_SCALE; scrollRectPatern.stage.scaleMode = StageScaleMode.NO_SCALE; } |
|
|||||
потому что:
1 - все ваши stage указывают на один и тот же экземпляр класса Stage. он один одинешенек для всего приложения 2 - в вашем случае все scrollRectClip.stage могут возвращать null, если не добавлены на сцену.
__________________
http://cleptoman.free-lance.ru achivements: дважды благословлен на воровство. осеяный благодатью |
|
|||||
Регистрация: Jun 2006
Сообщений: 400
|
cleptoman, про stage это я на всякий случай)
Забыл написать, функция подписана на события addedToStage. Я думал будет понятно. Или все равно может быть null? |
|
|||||
а что должно быть понятно?..есть какойто обработчик какого-то события, которое где-то диспатчица)
__________________
http://cleptoman.free-lance.ru achivements: дважды благословлен на воровство. осеяный благодатью |
|
|||||
вот если бы была строчка
тогда да, было бы понятно..что, где и когда.
__________________
http://cleptoman.free-lance.ru achivements: дважды благословлен на воровство. осеяный благодатью |
|
|||||
Регистрация: Jun 2006
Сообщений: 400
|
Цитата:
Я сначала создаю бъект. Он наследуется от спрайта и при создании накидывает как бы на свою собственную сцену элементы. Потом я вешаю обработчик ADDED_TO_STAGE из конструктора класса на this. А этот объект я уже добавляю где-то в другом месте. Как я предполагаю, событие сработает тогда, когда я этот элемент где-нибудь добавлю на сцену. Я правильно понимаю? Или же оно срабатывает когда я на его сцену что-то добавляют? Цитата:
|
|
|||||
Цитата:
Добавлено через 1 минуту т.е.
__________________
http://cleptoman.free-lance.ru achivements: дважды благословлен на воровство. осеяный благодатью |
|
|||||
Регистрация: Jun 2006
Адрес: Москва
Сообщений: 461
|
Вот-вот, видно, у автора нет понимания, что scaleMode у stage работает на всю сцену целиком, и неважно, откуда у вас все на ней взялось, из swc или подгружена внешняя библиотека символов.
Скажите, что вы потом делаете с флешкой и какое поведение каких клипов вам не подходит,тогда может станет понятней. И кстати, я что-то не помню, чтобы у Sprite было свойство scaleMode |
|
|||||
Регистрация: Jun 2006
Сообщений: 400
|
cleptoman, а как мне задать scalemode для клипа или спрайта? у них такого свойства нет.
Hidest, угу, сейчас расскажу подробней. В flashIDE были нарисованы элементы скролл бара. Далее их убрали в swc и эта библиотека подключена к проекту Flash Developer. Проблема в том, что когда я этот скрол закидываю - он работает нормально. Но если я меняю его размер тупо присваивая в height некое значение, то элементы скролбара начинают растягиваться или сжиматься под новое значение height. Я предположил, что у этих клипов установлен scalemode по умолчанию. И по видимому ошибочно считал, что sprite.stage.scaleMode меняет scaleMode конкретно этого спрайта. Вроде даже делал так. Как тогда поменять scalemode у определенных элементов, а не у всей сцены? |
Часовой пояс GMT +4, время: 02:00. |
|
« Предыдущая тема | Следующая тема » |
|
|