![]() |
setChildIndex() - как правильно
Всем привет.
Столкнулся с такой проблемой при переходе на AS3: Код:
movie.swapDepths(Math.round(this._xscale) + 100); // = 160Код:
this.setChildIndex(movie, Math.round(thumb.scaleX*100)+100);// = 160Все бы хорошо, но у меня глубина зависит от размера. Теперь не знаю к чему глубину привязать. Подскажите как быть |
в AS3 нету слоёв и глубин.
DisplayObjectContainer может иметь детей, каждый из которых будет иметь индекс. индексы от 0 и больше. детей с одинаковым индексом быть не может. прочитайте про концепцию Display List |
Ну индекс это и есть глубина) В AS3 пустых индексов посреди листа делать нельзя, поэтому аналог swapDepths - swapChildren принимает 2 DisplayObject-а как аргументы. Для того чтобы вынести какой-либо элемент выше других, можно получить максимальный индекс засчет использования свойства numChildren, а затем переставить клипы в нужном порядке.
А насчет привязки - нет смысла так делать, лучше брать значения размера, упорядочивать их в массиве по возрастанию/убыванию и расставлять детей в соответствии с индексами |
понятно, просто проблема теперь чисто логическая:
есть количество мувиков, в ходе программы их размер изменяеться посредством scaleY и scaleX, теперь чем больше размер, тем выше индекс. Уже весь извелся, не могу придумать как привязать scale и номер индекса. |
привяжите массив и сортируйте в нём ваших детей. номер индекса в массиве будет соответвовать его номеру в дисплэйлисте.
|
спасибо всем за советы - буду реализовывать :)
|
чтоб не создавать новый пост решил спросить здесь:
Код:
picholder.useHandCursor = true; // picholder - мувиклип |
buttonMode
|
BlooDHounD, пасиба :)
|
Если интересно, могу подсказать с реализацией достаточно быстро работающего zOrder, если наследовать класс от MovieClip, можно модифицировать под независимый класс:
Код:
private var zOrder:Array = new Array; |
| Часовой пояс GMT +4, время: 20:59. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.