mx.collections
public class SortField
继承SortField Inheritance EventDispatcher Inheritance Object

提供对现有视图中的字段或属性建立排序所需的排序信息。通常,这种排序是针对包含复杂项目的集合定义的,复杂项目是指那些要在其中对这些对象的属性执行排序的项目。如下例所示:
          var col:ICollectionView = new ArrayCollection();
     col.addItem({first:"Anders", last:"Dickerson"});
     var sort:Sort = new Sort();
     sort.fields = [new SortField("first", true)];
     col.sort = sort;
        
也有集合中包含简单项目(如 StringDateBoolean 等)的情形。在这种情况下,应直接对简单类型应用排序。在这种情况下构造排序时,只需要一个排序字段,且不应指定 name。例如:
          var col:ICollectionView = new ArrayCollection();
     col.addItem("California");
     col.addItem("Arizona");
     var sort:Sort = new Sort();
     sort.fields = [new SortField(null, true)];
     col.sort = sort;
        

MXML 语法expanded隐藏 MXML 语法

The <mx:SortField> tag has the following attributes:

  <mx:SortField
  Properties
  caseInsensitive="false"
  compareFunction="Internal compare function"
  descending="false"
  name="null"
  numeric="null"
  />
  


公共属性
 属性定义方
  caseInsensitive : Boolean
指定此字段的排序是否应不区分大小写。
SortField
  compareFunction : Function
用于在对关联集合的项目进行排序时比较两个项目的函数。
SortField
 Inheritedconstructor : Object
对类对象或给定对象实例的构造函数的引用。
Object
  descending : Boolean
指定此字段是否应按降序排序。
SortField
  name : String
要排序的字段的名称。
SortField
  numeric : Object
指定当要进行排序的字段包含数值 (number/int/uint) 或数值的字符串表示形式时,比较运算符是否使用数值比较。
SortField
 Inheritedprototype : Object
[静态] 对类或函数对象的原型对象的引用。
Object
公共方法
 方法定义方
  
SortField(name:String = null, caseInsensitive:Boolean = false, descending:Boolean = false, numeric:Object = null)
构造函数。
SortField
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。
EventDispatcher
 Inherited
将事件调度到事件流中。
EventDispatcher
 Inherited
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。
EventDispatcher
 Inherited
指示对象是否已经定义了指定的属性。
Object
 Inherited
指示 Object 类的实例是否在指定为参数的对象的原型链中。
Object
 Inherited
指示指定的属性是否存在、是否可枚举。
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
从 EventDispatcher 对象中删除侦听器。
EventDispatcher
  
反转此排序字段的条件。
SortField
 Inherited
设置循环操作动态属性的可用性。
Object
 Inherited
返回指定对象的字符串表示形式。
Object
 Inherited
返回指定对象的原始值。
Object
 Inherited
检查是否用此 EventDispatcher 对象或其任何始祖为指定事件类型注册了事件侦听器。
EventDispatcher
事件
 事件 摘要 定义方
 Inherited[广播事件] Flash Player 或 AIR 应用程序获得操作系统焦点并变为活动状态时将调度此事件。EventDispatcher
 Inherited[广播事件] Flash Player 或 AIR 应用程序失去操作系统焦点并变为非活动状态时将调度此事件。EventDispatcher
属性详细信息
caseInsensitive属性
caseInsensitive:Boolean  [读写]

指定此字段的排序是否应不区分大小写。

默认值为 false.

此属性可用作数据绑定的源。修改此属性后,将调度 caseInsensitiveChanged 事件。



实现
    public function get caseInsensitive():Boolean
    public function set caseInsensitive(value:Boolean):void
compareFunction属性 
compareFunction:Function  [读写]

用于在对关联集合的项目进行排序时比较两个项目的函数。如果指定了 Sort 对象中的 compareFunction 属性,则 Flex 会忽略 Sort 的 SortField 对象的所有 compareFunction 属性。

该比较函数必须具有以下签名:

function myCompare(a:Object, b:Object):int

此函数必须返回以下值:

默认值为具有以下特征的内部比较函数:可以通过区分大小写或不区分大小写的字符串比较按升序或降序执行字符串、数字或日期比较。仅在需要自定义比较算法时指定您自己的函数。这种情况通常仅当在显示中使用计算的字段时出现。



实现
    public function get compareFunction():Function
    public function set compareFunction(value:Function):void
descending属性 
descending:Boolean  [读写]

指定此字段是否应按降序排序。

默认值为 false(升序)。

此属性可用作数据绑定的源。修改此属性后,将调度 descendingChanged 事件。



实现
    public function get descending():Boolean
    public function set descending(value:Boolean):void
name属性 
name:String  [读写]

要排序的字段的名称。

默认值为 null.

此属性可用作数据绑定的源。修改此属性后,将调度 nameChanged 事件。



实现
    public function get name():String
    public function set name(value:String):void
numeric属性 
numeric:Object  [读写]

指定当要进行排序的字段包含数值 (number/int/uint) 或数值的字符串表示形式时,比较运算符是否使用数值比较。如果此属性为 false,将使用字符串比较对具有数字字符串表示形式的字段进行排序,因此 100 应在 99 之前,因为字符串值“1”比字符串值“9”小。如果此属性为 null ,则自检第一个数据项以查看它是否为数字或字符串,并基于自检结果继续进行排序。

默认值为 false.

此属性可用作数据绑定的源。修改此属性后,将调度 numericChanged 事件。



实现
    public function get numeric():Object
    public function set numeric(value:Object):void
构造函数详细信息
SortField()构造函数
public function SortField(name:String = null, caseInsensitive:Boolean = false, descending:Boolean = false, numeric:Object = null)

构造函数。

参数
name:String (default = null) — 此字段用来进行比较的属性的名称。如果该对象为简单类型,则传递 null
 
caseInsensitive:Boolean (default = false) — 在对字符串进行排序时,指示比较运算符是否忽略值的大小写。
 
descending:Boolean (default = false) — 指示比较运算符是否按降序排列项目。
 
numeric:Object (default = null) — 指示比较运算符是否按编号而不按字母顺序比较排序项目。
方法详细信息
reverse()方法
public function reverse():void

反转此排序字段的条件。例如,如果该字段原来按降序排序,则现在按升序排序。

注意:修改 SortFields 时不会自动更新 ICollectionView;而调用 refresh() 方法可更新此视图。