Слушайте все типы событий EventDispatcher - PullRequest
2 голосов
/ 06 октября 2010

Можно ли во Flex прослушивать все типы событий объекта, который является IEventDispatcher?Первый параметр addEventListener - это тип, который является строкой.Во многих случаях в документации не ясно, какой тип события он запускает.Я хотел бы подключить общего слушателя для проверки событий.

Ответы [ 2 ]

3 голосов
/ 06 октября 2010

Я думаю, вы должны наследовать от этого класса и переопределить метод dispatchEvent следующим образом:

override public function dispatchEvent(event:Event):Boolean
{
    trace(event.type);
    return super.dispatchEvent(event);
}
1 голос
/ 08 октября 2010

Короткий ответ - нет, нет встроенного способа общего прослушивания для всех типов событий. Вам придется либо разработать систему для управления этим, либо сделать что-то похожее на то, что предлагает Splash. Лично я бы создал пользовательское событие, переопределил dispatchEvent и отправил бы ваше собственное пользовательское событие, передавая «тип» исходного события.

override public function dispatchEvent(event:Event):Boolean
{
    //Dispatch your custom event passing along with it the type of the original event.
    super.dispatchEvent(new CustomEvent(CustomEvent.ALL, event.type);
    return super.dispatchEvent(event);
}

Тогда вы можете просто настроить один прослушиватель для своего пользовательского события и легко отслеживать, когда и какие события запускаются.

Надеюсь, это поможет.

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