0

代码如下:


[Bindable]
public var abc_list:ArrayCollection;

...

this.abc_list.removeAll();
this.abc_list.addAll(otherCollection);

...

this.abclist.addEventListener(CollectionChangeEvent.COLLECTION_CHANGE, onCollectionChange)

我发现在removeAll()之后无法触发事件,但是在addAll(otherCollection)[with event.type]中效果很好。

所以在添加新列表之前并没有删除原始列表;而abc_list实际上是累积的?!

为什么会这样?我能用它做什么?

4

2 回答 2

0

可能是hacky,我正在大声思考,因为我没有检查过

this.abc_list.removeAll();
this.abc_list.refresh()

并在刷新时使用 CollectionEventKind.REFRESH 等待 CollectionEvent 事件

于 2011-05-18T08:18:41.787 回答
0

*this.abclist.addEventListener( CollectionChangeEvent.COLLECTION_CHANGE , onCollectionChange)*

是自定义事件吗?

我正在使用 CollectionEvent.COLLECTION_CHANGE,它适用于 removeAll() 方法。我希望使用 CollectionEvent.COLLECTION_CHANGE 可以解决您的问题。

于 2011-05-22T04:23:00.847 回答