1

我正在构建一个使用 SWFAddress 的 Flex 应用程序。每当我通过 SWFAddressSWFAddress.setValue()方法更新被劫持的 URL 时,我注意到它会导致SWFAddressEvent.CHANGE事件调度,从而导致我的页面再次经历其更新周期。

SWFAddress 中是否有一种方法可以“静默”更新被劫持的 URL,从而SWFAddressEvent.CHANGE不分派事件?

我现在能想到的唯一解决方法是删除事件侦听器,更改 URL,然后将其添加回来。但这似乎……真的……效率低下。有任何想法吗?

感谢您的时间。

4

1 回答 1

1

嘿,刚刚检查了源代码,那里没有任何东西可以阻止事件,如果它是一个新值,那么事件就会被分派(看起来它在初始化期间跳过了这样做,但在所有其他情况下,如果发生更改,它就会被分派)。您可以修改源,因为它可用并将您自己的布尔值添加到 SWFAddress 以阻止它调度事件,否则就像您已经说过删除/添加侦听器是一种选择,如果它只有一个对象添加/删除了侦听器我不'认为性能不会受到影响。

于 2012-07-31T19:06:58.860 回答