Дочерние элементы моего контейнера начинаются с индекса -1 или 0? - PullRequest
1 голос
/ 05 ноября 2010

Я получаю какое-то поведение с детьми объекта контейнера, которых я просто не понимаю.

Я делаю четыре экранных объекта потомками объекта mx:Canvas. Когда я звоню getChildren(), я вижу их все по порядку, именно там, где я думаю, они должны быть:

1
2
3
4

Веселье начинается, когда я звоню swapChildrenAt(0,1); это должно поменять местами позиции 1 и 2, но вместо этого я получаю:

MYSTERY_OBJECT_OF_MYSTERY
2
3
4

Итак, куда же пошел 1? Да, конечно, в позиции -1.

getChildAt(-1): 1
getChildAt(0): MYSTERY_OBJECT_OF_MYSTERY
getChildAt(1): 2
getChildAt(2): 3
getChildAt(3): 4

FWIW, MYSTERY_OBJECT_OF_MYSTERY - это «граница». Не знаю, как он туда попал.

Несмотря на это, я нахожу сбивающим с толку, что getChildAt() и swapChildrenAt() явно используют разные начальные индексы Кто-нибудь может пролить свет на это поведение?

1 Ответ

0 голосов
/ 02 июля 2012

Вы, похоже, меняете индекс экранных объектов вместо того, чтобы передавать экранные объекты в самих этих местах.

В официальной документации написано "swapChildren(child1:DisplayObject, child2:DisplayObject):void", поэтому индекс самих экранных объектов не можетб.

Надеюсь, это решит вашу проблему.

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