|
|
|||||
Регистрация: Sep 2009
Сообщений: 3
|
Новое событие
В классе генерирую новое событие и мне его надо прослушивать вне этого класса
public class stepper extends EventDispatcher{ .... public static var ACTION:String = "action"; .... dispatchEvent(new Event(stepper.ACTION)); прослушивать их получается только таким образом Вопрос - как добавить слушателя чтобы слушал сразу все объекты этого класса без перечисления их? |
|
|||||
вешать на стейдж и диспатчить с баблингом
__________________
http://cleptoman.free-lance.ru achivements: дважды благословлен на воровство. осеяный благодатью |
|
|||||
Регистрация: Sep 2009
Сообщений: 3
|
Распишите плиз нюбу
|
|
|||||
думаю хелп поможет, потому что контекста вашего вещания я не уловил..
__________________
http://cleptoman.free-lance.ru achivements: дважды благословлен на воровство. осеяный благодатью |
|
|||||
Регистрация: Jul 2009
Сообщений: 35
|
Я вот до конца не понял зачем с bubbles делать событие.
Или это для универсальности, чтобы его можно было при случае и на фазе всплытия слушать? |
|
|||||
Там где "dispatchEvent", можно передавать по static функционалу что надо куда надо..
|
|
|||||
.
|
public class Stepper extends EventDispatcher { private static const _dispatchers:Object = new Object(); public static function addEventListener(type:String, method:Function):void { for each (var dispatcher:IEventDispatcher in _dispatchers) { dispatcher.addEventListener(type, method); } } // Constructor public function Stepper() { _dispatchers[Math.random()] = this; } } var stepperOne:Stepper = new Stepper(); var stepperTwo:Stepper = new Stepper(); var stepperThree:Stepper = new Stepper(); Stepper.addEventListener(StepperEvent.ACTION, this.onElementSelect); |
|
|||||
Регистрация: Mar 2008
Адрес: Ростов-на-Дону
Сообщений: 354
|
Elfon, с бабблингом делать событие полезно в том случае, когда без явной подписки нужно слушать произвольное количество объектов, находящихся ниже по иерархии вложенности. Но это возможно только в том случае, если все объекты добавлены на дисплей-лист (и, соответственно, наследуют DisplayObject).
И желательно не забывать останавливать дальнейшее распространение события (Event.stopPropagation()) на последнем из уровней, использующих событие. |
Часовой пояс GMT +4, время: 03:24. |
|
« Предыдущая тема | Следующая тема » |
|
|