![]() |
|
||||||||||
|
|||||
|
Регистрация: Oct 2013
Сообщений: 126
|
Есть ли какой-то способ посчитать количество всех объектов на сцене?
Если представить класс Main как главного родителя, то можно, конечно, посчитать через numChildren его детей, а затем через цикл ещё и внуков. Но ведь нужно получить количество вообще всех объектов, которые добавлены на сцену или на своего родителя через addChild. Как же сделать это, если в отдельно взятый момент мы не можем точно знать количество уровней в иерархии? (Извините за опечатку в названии темы, как теперь исправить - не знаю) |
|
|||||
|
Как-нибудь так:
private function getNumObjects(parent:DisplayObjectContainer):int { var result:int = parent.numChildren; for (var i:int = 0; i < parent.numChildren; i++) { var container:DisplayObjectContainer = parent.getChildAt(i) as DisplayObjectContainer; if (container == null) { continue; } result += getNumObjects(container); } return result; }
__________________
Будь проще. Последний раз редактировалось KBAC; 24.01.2014 в 19:04. |
|
|||||
|
[+4 06.05.14]
|
Цитата:
Я вот борюсь давно за то, чтобы AS3 - был полностью типизированным, * конечно круто - но для нормальных программных продуктов, оно на хрен не надо. Так же мне не нравится приведение типов из за * массивных данных. Что за фигня, когда ты создаешь метод ( сообщение, принимаемое от сервера ) а получив вместо cash, строку XXX - переведется в 1. Какого?!!! Экспешн должен быть и точка!!! Я считаю свой код, мягко сказать неидеальным, а точнее ХРЕНОВЫМ , без вопросов. И вот когда, судьба дает мне возможность ждать * - что бы я там не писал, это располагает мое сознание ( да и большинство других людей ) - писать *слабый* код. Я не хочу совершенствоваться в AS допустим, но и не хочу писать ерунду, мне устраивает то, что я уже знаю, допустим, но если бы я изначально не знал НЕ типизированных массивов и класса * , я бы писал код более организованно и приучался бы к ПРАВИЛЬНОЙ типизации. Ох... простите, навеяло. Просто эти темы уже задолбали. Psycho - жду тебя, высказать мне че нить)))
__________________
Марк Tween |
|
|||||
|
Цитата:
Добавлено через 5 минут Можно как-то так сделать, например. Сделать какой-то свой базовый спрайт и считать все его инстансы на сцене. Если у вас всё является какими-то вьюхами, то вполне ок вариант.
__________________
Кто к нам с чем для чего - тот у нас того от того. |
|
|||||
|
Регистрация: Mar 2012
Адрес: г.Новосибирск
Сообщений: 381
|
можно считать их при создании
|
|
|||||
|
Регистрация: Mar 2012
Адрес: г.Новосибирск
Сообщений: 381
|
ну, имелось ввиду при добавлении
|
|
|||||
|
Вы правы, сейчас проверил у себя и убедился, что проверку действительно не обязательно делать. Но скомпилироватся коду ничего не помешает, ведь за раннее не известно, какой объект передадут для проверки.
|
|
|||||
|
Регистрация: Oct 2013
Сообщений: 126
|
попробую предложенные варианты, всем спасибо!
|
![]() |
![]() |
Часовой пояс GMT +4, время: 21:30. |
|
|
« Предыдущая тема | Следующая тема » |
|
|