海賊王をめざす男 マツです。こんにちは。

Flex のコンポーネントを使用してると dataProvider をセットするので、Array より ArrayCollection を利用してます。条件絞込みによりフィルタリングも便利です。


ArrayCollection の _myAryC に対して、filterFunction を設定し、条件をクリアしたものをフィルタリングします。

// フィルタ
_myAryC.filterFunction = testFilter;
_myAryC.refresh();
// 条件
function testFilter(mydata:Object):Boolean {
	return mydata.id == hoge_id;
}


このとき、フィルタ前の ArrayCollection 内のデータのソースも保持されてます。source で参照

_myAryC.source


null でフィルタをリセットできます。

_myAryC.filterFunction = null;
_myAryC.refresh();

HTML5飯