| Пакет | mx.collections |
| Класс | public class SortField |
| Наследование | SortField EventDispatcher Object |
| Реализует | ISortField |
| Язык версии: | ActionScript 3.0 |
| Версия продукта: | Flex 3 |
| Версии среды выполнения: | Flash Player 9, AIR 1.1 |
![]() | Начиная с Flex 4.5, Adobe рекомендует вместо этого класса использовать класс spark.collections.SortField. |
Обеспечивает информацию о сортировке, необходимую для выполнения сортировки по полю или свойству в представлении коллекции. Класс SortField предназначен для использования с классом Sort. Обычно сортировка определяется для коллекций сложных элементов, т. е. для элементов, в которых она выполняется по свойствам этих объектов. Например:
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;
Возможны ситуации, в которых коллекция содержит простые элементы, подобные String, Date, Boolean и т. д. В этом случае сортировка должна применяться непосредственно к простому типу. При построении сортировки в этой ситуации необходимо наличие отдельного поля сортировки, не имеющего указанного 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;
По умолчанию сравнение, выполняемое с помощью класса SortField, не обеспечивает правильную языковую сортировку для строк. Для получения информации об этом типе сортировки см. описание классов spark.collections.Sort и spark.collections.SortField.
Скрыть синтаксис MXMLThe <mx:SortField> tag has the following attributes:
<mx:SortField Properties caseInsensitive="false" compareFunction="Internal compare function" descending="false" name="null" numeric="null" />
Связанные элементы API
| Свойство | Определено | ||
|---|---|---|---|
| arraySortOnOptions : int [только для чтения]
Это вспомогательное свойство используется на внутреннем уровне методами findItem() и sort(). | SortField | ||
| caseInsensitive : Boolean
Указывает, должна ли сортировка для данного поля зависеть от регистра. | SortField | ||
| compareFunction : Function
Функция, сравнивающая два элемента при сортировке элементов для связанной коллекции. | SortField | ||
![]() | constructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта. | Object | |
| descending : Boolean
Указывает, следует ли сортировать данное поле в порядке убывания. | SortField | ||
| name : String
Имя поля для сортировки. | SortField | ||
| numeric : Object
Указывает, что если сортируемое поле содержит числовые значения (number/int/uint) или строковые представления числовых значений, то средство сравнения использует числовое сравнение. | SortField | ||
| usingCustomCompareFunction : Boolean [только для чтения]
True, если для ISortField указана пользовательская функция средства сравнения. | SortField | ||
| Метод | Определено | ||
|---|---|---|---|
SortField(name:String = null, caseInsensitive:Boolean = false, descending:Boolean = false, numeric:Object = null)
Конструктор. | SortField | ||
![]() | addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Регистрирует объект прослушивателя события на объекте EventDispatcher для получения прослушивателем уведомления о событии. | EventDispatcher | |
![]() |
Посылает событие в поток событий. | EventDispatcher | |
![]() |
Проверяет, имеет ли объект EventDispatcher прослушиватели, зарегистрированные для определенного типа события. | EventDispatcher | |
![]() |
Показывает, определено ли заданное свойство для объекта. | Object | |
Вспомогательная функция, которую вызывает класс Sort, чтобы установить функцию сравнения по умолчанию для сравнений на основе одного из трех условий, определяющих была ли установлена пользовательская функция, тип данных для определенного поля или значение числового свойства. | SortField | ||
![]() |
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра. | Object | |
![]() |
Показывает наличие заданного свойства и его перечисляемость. | Object | |
![]() |
Удаляет прослушиватель из объекта EventDispatcher. | EventDispatcher | |
Задает обратный порядок критериев для данного поля сортировки. | SortField | ||
![]() |
Задает доступность динамического свойства для операций цикла. | Object | |
![]() |
Возвращает строковое представление этого объекта, отформатированного в соответствии со стандартами, принятыми для данной локали. | Object | |
![]() |
Возвращает строковое представление заданного объекта. | Object | |
![]() |
Возвращает элементарное значение заданного объекта. | Object | |
![]() |
Проверяет, зарегистрирован ли прослушиватель события для указанного типа события с данным объектом EventDispatcher или любым его предшественником. | EventDispatcher | |
arraySortOnOptions | свойство |
arraySortOnOptions:int [только для чтения] | Язык версии: | ActionScript 3.0 |
| Версия продукта: | Flex 3 |
| Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Это вспомогательное свойство используется на внутреннем уровне методами findItem() и sort(). Другое использование этого свойства не поддерживается. Возвращает -1, если ISortField не может использоваться в классе Sort для сортировки поля (отсутствует compareFunction или имя). В противном случае возвращает битовую маску параметров сортировки.
Реализация
public function get arraySortOnOptions():intcaseInsensitive | свойство |
caseInsensitive:Boolean| Язык версии: | ActionScript 3.0 |
| Версия продукта: | Flex 3 |
| Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Указывает, должна ли сортировка для данного поля зависеть от регистра.
Значением по умолчанию является false.
Это свойство можно использовать в качестве источника для связывания данных. При изменении этого свойства отправляется событие caseInsensitiveChanged .
Реализация
public function get caseInsensitive():Boolean public function set caseInsensitive(value:Boolean):voidcompareFunction | свойство |
compareFunction:Function| Язык версии: | ActionScript 3.0 |
| Версия продукта: | Flex 3 |
| Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Функция, сравнивающая два элемента при сортировке элементов для связанной коллекции. При указании свойства compareFunction для объекта ISort Flex игнорирует любые свойства compareFunction объектов SortField в ISort.
Функция сравнения должна иметь следующую подпись:
функция myCompare(a:Object, b:Object):int
Эта функция должна возвращать следующие значения:
- -1, если
aдолжно появиться доbв сортированной последовательности; - 0, если
aравноb; - 1, если
aдолжно появиться послеbв сортированной последовательности.
Значение по умолчанию представляет собой внутреннюю функцию сравнения, которая может выполнять сравнение строк, чисел или дат в восходящем или нисходящем порядке, с учетом или без учета регистра. Собственную функцию следует указывать только в том случае, если необходим пользовательский алгоритм сравнения. Обычно он применяется только в том только случае, если в отображении используется вычисленное поле.
Если требуется выполнить языковую сортировку, используйте классspark.collections.SortField.
Реализация
public function get compareFunction():Function public function set compareFunction(value:Function):voidСвязанные элементы API
descending | свойство |
descending:Boolean| Язык версии: | ActionScript 3.0 |
| Версия продукта: | Flex 3 |
| Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Указывает, следует ли сортировать данное поле в порядке убывания.
Значение по умолчанию равно false (в порядке возрастания).
Это свойство можно использовать в качестве источника для связывания данных. При изменении этого свойства отправляется событие descendingChanged .
Реализация
public function get descending():Boolean public function set descending(value:Boolean):voidname | свойство |
name:String| Язык версии: | ActionScript 3.0 |
| Версия продукта: | Flex 3 |
| Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Имя поля для сортировки.
Значением по умолчанию является null.
Это свойство можно использовать в качестве источника для связывания данных. При изменении этого свойства отправляется событие nameChanged .
Реализация
public function get name():String public function set name(value:String):voidnumeric | свойство |
numeric:Object| Язык версии: | ActionScript 3.0 |
| Версия продукта: | Flex 3 |
| Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Указывает, что если сортируемое поле содержит числовые значения (number/int/uint) или строковые представления числовых значений, то средство сравнения использует числовое сравнение.
Это свойство используется в классе SortField, если не указана пользовательская функция сравнения.
Если для этого свойства установлено значение true, то используется встроенная функция числового сравнения. Перед сравнением каждому элементу данных присваивается функция Number().
Если для этого свойства установлено значение false, то используется встроенная функция сравнения строк. Перед сравнением каждому элементу данных присваивается функция String().
Если это свойство равно null, то анализируется первый элемент данных для определения, является он числом или строкой, после чего сортировка продолжается на основании этого анализа.
Значением по умолчанию является null.
Это свойство можно использовать в качестве источника для связывания данных. При изменении этого свойства отправляется событие numericChanged .
Реализация
public function get numeric():Object public function set numeric(value:Object):voidusingCustomCompareFunction | свойство |
usingCustomCompareFunction:Boolean [только для чтения] | Язык версии: | ActionScript 3.0 |
| Версия продукта: | Flex 3 |
| Версии среды выполнения: | Flash Player 9, AIR 1.1 |
True, если ISortField использует пользовательскую функцию средства сравнения.
Реализация
public function get usingCustomCompareFunction():BooleanSortField | () | Конструктор |
public function SortField(name:String = null, caseInsensitive:Boolean = false, descending:Boolean = false, numeric:Object = null)| Язык версии: | ActionScript 3.0 |
| Версия продукта: | Flex 3 |
| Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Конструктор.
Параметрыname:String (default = null) — Имя свойства, используемое этим полем для сравнения. Если объект относится к простому типу, следует передать null.
| |
caseInsensitive:Boolean (default = false) — При сортировке строк сообщает средству сравнения, следует ли игнорировать регистр значений.
| |
descending:Boolean (default = false) — Сообщает устройству сравнения, следует ли разместить элементы в порядке убывания.
| |
numeric:Object (default = null) — Сообщает средству сравнения, следует ли сравнивать элементы сортировки как числовом порядке вместо алфавитного порядка.
|
initializeDefaultCompareFunction | () | метод |
public function initializeDefaultCompareFunction(obj:Object):void| Язык версии: | ActionScript 3.0 |
| Версия продукта: | Flex 3 |
| Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Вспомогательная функция, которую вызывает класс Sort, чтобы установить функцию сравнения по умолчанию для сравнений на основе одного из трех условий, определяющих была ли установлена пользовательская функция, тип данных для определенного поля или значение числового свойства. Если свойство numeric имеет значение true, то при сортировке будет выполняться числовое сравнение.
Параметры
obj:Object — Объект , содержащий данные. Если для указания имени поля использовалось свойство Name, то это имя будет использоваться для доступа к значению данных из этого объекта. В противном случае в качестве значения данных будет использован непосредственный объект.
|
reverse | () | метод |
public function reverse():void| Язык версии: | ActionScript 3.0 |
| Версия продукта: | Flex 3 |
| Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Задает обратный порядок критериев для данного поля сортировки. Например, если поле сортировалось в порядке убывания, оно будет отсортировано в порядке возрастания.
ПРИМЕЧАНИЕ. ICollectionView не обновляется автоматически при изменении ISortFields; для обновления представления следует вызвать метод refresh().
Tue Jun 12 2018, 11:34 AM Z

Показать синтаксис MXML