|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Как восстановить цепочку диспетчеризации событий?
У меня такая ситуация: Сцена, на ней по орбитам движутся планеты. По клику на каждой планете рядом с ней создается контейнер с кнопками - возможные действия на этой планете. Контейнер следует за планетой. Чтобы контейнер с кнопками был всегда сверху и не перекрывался другими планетами, он чайлдится не к своей планете а к сцене на верхний уровень. Соответственно, когда происходит клик по кнопке, цепочка диспетчеризации оказывается "разорвана" т.е. событие клика в фазе захвата/всплытия отрабатывается: сцена - контейнер - кнопка - контейнер - сцена. Планета оказывается выкинутой из цепочки. А мне бы хотелось иметь ее на фазе захвата, чтобы помечать ее как текущую и легко получать ее id, а не через навороченную цепочку parent.leader.parent... (leader это указатель на планету, чтобы иметь возможность перемещать кнопки следом за ней). На ум приходит слушать событие в контейнере и диспатчить его планете, но тогда планета получит событие в фазе TARGET, а мне это не нужно, мне нужно отработать клик на ней в фазе захвата. Можно что-то придумать в данной ситуации или к планете можно добраться только через прямую цепочку указателей?
|
|
|||||
Ну, у меня не Dictionary а самопальные списки объектов. Как мне Dictonary поможет?
Добавлено через 38 секунд Да. leader |
|
|||||
Цитата:
Эта функция помещает, контейнер с кнопками, на самый верх, контейнера с планетами.
__________________
Книги и желание лучшие учителя. |
|
|||||
Цитата:
|
|
|||||
что мешает тогда слушать события кнопок конетйнеру и просто вызвать метод планеты напрямую?
__________________
Хороший отдых - половина работы. |
|
|||||
Я не внимательно прочитал, вопрос, поэтому некорректный дал ответ.
Я имел ввиду, к планете, а не в клип с планетой, как у вас и сделано. Сори.
__________________
Книги и желание лучшие учителя. Последний раз редактировалось Vektor; 16.01.2012 в 19:36. |
|
|||||
Цитата:
что по-моему не есть гут. Чайлд не должен в жесткую знать такую длинную линейку своих парентов. |
Часовой пояс GMT +4, время: 02:26. |
|
« Предыдущая тема | Следующая тема » |
|
|