2011年4月18日月曜日

SparkのListでMXのList.invalidateList()と同じ動作をさせるには?

MXのListにはinvalidateList()というメソッドがあったのだけれど、SparkのListにはない。

これじゃリストの内容が変わったときどうするの?dataProviderを再セットしたり、dataProviderにセットしているArrayCollectionのrefresh()を呼ぶとか?しかし、これだと選択されていたアイテムが非選択になってしまう。

前にもハマったのだけれど、メモし忘れてた。こうすればよかったのだった。

var ir:IFactory = list.itemRenderer;
list.itemRenderer = null;
list.itemRenderer = ir;

これでMXのList.invalidateList()と同じ効果がある。SparkのListにも同じメソッドを残しておいてくれれば良かったのに。