<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml "
layout="horizontal"
verticalAlign="middle"
horizontalAlign="center">
<mx:Script>
<![CDATA[
import mx.collections.SortField;
import mx.collections.Sort;
import mx.collections.ArrayCollection;
[Bindable]
public var myCollection:ArrayCollection = new ArrayCollection([{label:"A"},
{label:"B"},{label:"C"},{label:"D"},{label:"E"},{label:"F"}]);
//排序
public function sortCollection():void
{
var sort:Sort = new Sort();
sort.fields = [new SortField("label",true,true)];
myCollection.sort = sort;
myCollection.refresh(); //应用更改
}
public function stateFilter(item:Object):Boolean
{
return item.label >= "B" && item.label <= "D";
}
//筛选
public function filterCollection():void
{
myCollection.filterFunction = stateFilter;
myCollection.refresh();
}
]]>
</mx:Script>
<mx:List dataProvider="{myCollection}" width="200" />
<mx:Button label="Sort Collection1" click="sortCollection();" />
<mx:Button label="Sort Collection2" click="filterCollection();" />
</mx:Application>