ArrayCollection
là một lớp con của ListCollectionView
mà có một sort
property. Lớp học Sort
có một số compareFunction
property mà bạn có thể sử dụng để xác định các chức năng sắp xếp tùy chỉnh.
private function sortFunction(a:Object, b:Object, array:Array = null):int
{
//assuming that 'level' is the name of the variable in each object
//that holds values like "Critical", "High" etc
var levels:Array = ["Low", "Medium", "High", "Critical"];
var aLevel:Number = levels.indexOf(a.level);
var bLevel:Number = levels.indexOf(b.level);
if(aLevel == -1 || bLevel == -1)
throw new Error("Invalid value for criticality ");
if(aLevel == bLevel)
return 0;
if(aLevel > bLevel)
return 1;
return -1;
}
var sort:Sort = new Sort();
sort.compareFunction = sortFunction;
arrayCollection.sort = sort;
arrayCollection.refresh();
Nó hoạt động tốt amar nhờ – skumarvarma
chức năng nên trở int – zinovii
@zdmytriv cố định; cảm ơn :) – Amarghosh