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

ハックかもしれません。チェックしていないので、大声で考えています

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 に答える