apache-flex - 获取特定组件上的所有事件监听器

标签 apache-flex actionscript-3

我有一个 flex 应用程序,它有一些开箱即用的组件以及相当多的自定义组件和事件。

我想在运行时获取特定组件上的所有事件监听器,我知道如何使用猴子修补框架来做到这一点,但我不想使用猴子修补程序,也不能在生产中依赖它。

有办法吗?

最佳答案

EventDispatcher有一个非常 slim 的公共(public)界面:

  • 添加事件监听器
  • dispatchEvent
  • 有EventListener
  • removeEventListener
  • willTrigger

这意味着不会公开监听器列表。您只能判断是否至少有一个特定类型事件的事件监听器。

我会重新审视为什么你需要做你想做的事。在一个典型的Observer Pattern听众列表并不意味着要公开。我有一种强烈的感觉,如果您试图获得该列表,那么您正在从错误的方向处理更高级别的问题。

关于apache-flex - 获取特定组件上的所有事件监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3100382/

相关文章:

actionscript-3 - Flex 4 spark Panel 顶部有一个难看的灰色

actionscript-3 - Flash/AS3播放器如何读取mp3文件的长度?

actionscript-3 - 在 ActionScript 3 中创建具有对象相等性的 "true"HashMap 实现

java - Hibernate 连接数据库中的每个表

apache-flex - 如何在 flex 中的 Canvas 组件周围创建类似 float 效果的阴影?

apache-flex - 关于将 Flex 与 WCF 和 Linq to Entities 结合使用的建议

actionscript-3 - Adobe AIR : touch screen doesn't trigger mouse down event correctly

flash - Adobe Flash 浏览器是独立的吗?

apache-flex - 重构时出现 StackOverflowError

actionscript-3 - 如何将焦点设置在 TLFTextField 上