0

我正要向我的 ArrayCollections 之一添加一个事件侦听器,如下所示:

m_acElements.addEventListener(CollectionEvent.COLLECTION_CHANGE,
        onCollectionChange);

在开始编写 onCollectionChange 函数时,我参考了有关CollectionEvent.kind的 API 参考,其中指出:

"Indicates the kind of event that occurred. The property value can be one of the
values in the CollectionEventKind class, or null, which indicates that the kind
is unknown."

这很可怕。关于什么时候是未知的,那里并没有说太多,而且在其他地方环顾四周寻找迹象时,也不是很明显。

我在这里没有做任何异国情调的事情。那么是否有某种保证,对 AddItem 和 AddItemAt 的非错误调用会产生一个 ADD 事件,而 removeAll 和 removeItemAt 会产生一个 REMOVE 事件?或者这只是不完全可靠?

我想如果有必要我可以在子类中重写这些方法,但我宁愿被告知我是偏执狂。另外,我只想大致了解何时使用 CollectionEvents 来注意这一点。谢谢!

4

1 回答 1

1

你在这里反应过度了。只是 Adob​​e 的代码文档过于详细。如果kind未设置或出现未知类型,则值为 null。如果有人手动分派事件,如果有人忘记设置类型,或者如果有人没有正确扩展事件,就会发生这种情况。Adobe 的文档几乎总是非常详尽。他们很少超出预期。这只是他们彻底并涵盖了所有基础。如果 Adob​​e 的代码有机会调度具有不同/未知类型的事件,他们将为它提供另一个常量(这正是 Adob​​e 的 Flash 开发团队的工作方式)

于 2013-10-21T22:48:05.610 回答