![]() |
Как обратиться к объекту на которого нет ссылок
Как обратиться к объекту на которого нет ссылок?
|
Это как? Он есть на экране? Откуда вы знаете что он вообще есть?
|
Код AS3:
|
ну, если он добавлен addChild, то может быть получен через getChild, очевидно.
Имена методов как бы намекают |
Цитата:
приведу другой пример: Код AS3:
УПД. хотя и в первом коде плодятся объекты с перекрытыми ссылками |
Цитата:
Невозможно добавить в дисплей лист класс. |
Цитата:
может быть Код AS3:
|
Зачем вы умышленно теряете ссылку на объект, если он вам нужен будет в будущем?
Если ссылок на объект не останется, то его GC съест. Если объект добавлен в список отображения, то на него есть ссылка, которую можно получить через getChild и иже с ним, как уже выше было упомянуто. |
если на объект нет ссылок, он будет удален сборщиком мусора, и никак к нему обратиться нельзя. Если объект добавлен на сцену, а ссылок на него нет - getChildAt ()
|
Код у вас совершенно неверный, caseyryan правильно заметил. Добавляется объект.
Если объект добавлен через addChild, то на него есть ссылка, и его можно получить. add/get Если на объект нету ссылок, то объект будет убран через некоторое время сборщиком мусора. Добавлено через 44 секунды Цитата:
|
Цитата:
myMap.addChild(new myPlayer()) //класс myPlayer потомок DisplayObject на экране не отобразиться? Добавлено через 4 минуты Цитата:
|
Вы добавляете класс mySprite, это невозможно.
Нужно добавлять объект-экземпляр класса. В вашем коде cellSprite-это объект, mySprite-класс. |
Код AS3:
этот код создает пять объектов, так ведь? или... и в конце концов переменная cellSprite будет ссылаться на последний, созданный циклом, экземпляр |
Не
Код AS3:
Код AS3:
|
нет не создаёт. Идите и читайте Колина Мука. Объективно, в голове у вас ООП-каша. Вы путаете классы и объекты, и не понимя самого фундамента пытаете ползти дальше, не стоит так делать.
|
Нет, так неверно. Еще раз перечитайте.
|
Если вы планируете работать с этими объектами сохраните ссылки на них например в массив.
Добавлено через 1 минуту mySprite у вас - это имя Класса, его нельзя добавить в список отображения, можно только его экземпляр Код AS3:
|
чтобы просмотреть всех детей нужен такой код:
Код AS3:
|
Код AS3:
|
endfill кто будет делать?
Код AS3:
|
Я обычно храню созданные в циклах объекты в массивах, если в дальнейшем понадобится к ним обращаться
|
Можно так:
Код AS3:
Код AS3:
Код AS3:
Код AS3:
|
что мешает завести массив для отображаемых элементов в контейнере(которые, собственно, создаются динамично)? и таскать их из цикла по параметру.
|
Цитата:
|
Цитата:
другое же - если на сцене несколько контейнеров и доставать нужно из определённого. |
Цитата:
|
| Часовой пояс GMT +4, время: 23:48. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.