Пакет | mx.collections |
Интерфейс | public interface ICollectionView extends IEventDispatcher |
Средство реализации | ListCollectionView |
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
ICollectionView
является представлением коллекции данных. Представление может изменяться для отображения данных, отсортированных в соответствии с различными критериями или уменьшенных фильтрами без изменения основных данных. IViewCursor обеспечивает доступ к элементам в пределах коллекции. Можно изменить коллекцию с помощью методов insert()
и remove()
интерфейса IViewCursor.
ICollectionView
может представлять данные, извлеченные из удаленного местоположения. При реализации этого интерфейса для данных, которые могут быть удаленными, важно предусмотреть случай, когда данные недоступны, в результате чего инициируется ошибка ItemPendingError
.
Интерфейс IList
является альтернативой интерфейсу ICollectionView
.
Связанные элементы API
Свойство | Определено | ||
---|---|---|---|
filterFunction : Function
Функция, которую представление использует для устранения элементов, несоответствующих критериям функции. | ICollectionView | ||
length : int [только для чтения]
Число элементов в данном представлении. | ICollectionView | ||
sort : ISort
ISort, применяемый к ICollectionView. | ICollectionView |
Метод | Определено | ||
---|---|---|---|
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Регистрирует объект прослушивателя события на объекте EventDispatcher для получения прослушивателем уведомления о событии. | IEventDispatcher | ||
Возвращает значение, определяющее, содержит ли данное представление указанный объект. | ICollectionView | ||
Создает новый IViewCursor, работающий с данным представлением. | ICollectionView | ||
Предотвращает передачу представлением информации об изменениях коллекции и ее элементов. | ICollectionView | ||
Посылает событие в поток событий. | IEventDispatcher | ||
Активирует автоматическое обновление. | ICollectionView | ||
Проверяет, имеет ли объект EventDispatcher прослушиватели, зарегистрированные для определенного типа события. | IEventDispatcher | ||
itemUpdated(item:Object, property:Object = null, oldValue:Object = null, newValue:Object = null):void
Уведомляет представление об обновлении элемента. | ICollectionView | ||
Применяет сортировку и фильтр к представлению. | ICollectionView | ||
Удаляет прослушиватель из объекта EventDispatcher. | IEventDispatcher | ||
Проверяет, зарегистрирован ли прослушиватель события для указанного типа события с данным объектом EventDispatcher или любым его предшественником. | IEventDispatcher |
Событие | Сводка | Определено | ||
---|---|---|---|---|
Передается при обновлении ICollectionView. | ICollectionView |
filterFunction | свойство |
filterFunction:Function
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Функция, которую представление использует для устранения элементов, несоответствующих критериям функции. Ожидается следующая подпись filterFunction:
f(item:Object):Booleanгде возвращаемым значением является
true
, если указанный элемент следует оставить в представлении.
Если фильтр не поддерживается, в Flex инициируется ошибка при доступе к данному свойству. Для обновления представления следует вызвать refresh()
после установки свойства filterFunction
.
Примечание. Реализации ICollectionView в Flex извлекают все элементы из удаленного местоположения перед выполнением функции фильтрации. При использовании подкачки страниц следует применить фильтр к удаленной коллекции перед извлечением данных.
Реализация
public function get filterFunction():Function
public function set filterFunction(value:Function):void
Связанные элементы API
length | свойство |
sort | свойство |
sort:ISort
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
ISort, применяемый к ICollectionView. Установка сортировки не обновляет представление автоматически, поэтому после установки данного свойства следует вызвать метод refresh()
. Если сортировка не поддерживается, то при доступе к этому свойству инициируется ошибка.
Примечание. Реализации ICollectionView в Flex извлекают все элементы из удаленного местоположения перед выполнением сортировки. При использовании подкачки страниц с сортированным списком к удаленной коллекции перед извлечением данных следует применить сортировку.
Реализация
public function get sort():ISort
public function set sort(value:ISort):void
Связанные элементы API
contains | () | метод |
public function contains(item:Object):Boolean
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Возвращает значение, определяющее, содержит ли данное представление указанный объект. В отличие от методов IViewCursor.findxxx
, этот поиск будет успешным только при нахождении элемента, точно соответствующего данному параметру. При наличии фильтра, применяемого к представлению, данный метод может вернуть false
даже в случае, если элемент действительно содержится в основной коллекции.
Параметры
item:Object — Искомый объект.
|
Boolean — Значение равно true, если ICollectionView содержит элемент после применения любого фильтра; в противном случае значение равно false.
|
createCursor | () | метод |
public function createCursor():IViewCursor
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Создает новый IViewCursor, работающий с данным представлением.
ВозвращаетIViewCursor — Новая реализация IViewCursor.
|
disableAutoUpdate | () | метод |
public function disableAutoUpdate():void
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Предотвращает передачу представлением информации об изменениях коллекции и ее элементов. Также предотвращает обновление позиций элементов в представлении при изменении позиций в коллекции. Эти изменения устанавливаются в очередь и передаются после вызова enableAutoUpdate
. Если для отдельного элемента происходит больше событий, чем обновлений, представление может завершиться сбросом. Метод disableAutoUpdate
действует кумулятивно; для передачи и обновления событий в представлении требуется одинаковое число вызовов enableAutoUpdate
. Учтите, что disableAutoUpdate
влияет только на отдельные представления; редактирование может быть обнаружено другими представлениями на базе отдельного представления.
enableAutoUpdate | () | метод |
public function enableAutoUpdate():void
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Активирует автоматическое обновление. Для получения дополнительной информации см. disableAutoUpdate
.
Связанные элементы API
itemUpdated | () | метод |
public function itemUpdated(item:Object, property:Object = null, oldValue:Object = null, newValue:Object = null):void
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Уведомляет представление об обновлении элемента. Этот метод рекомендуется использовать, если содержимое представления не реализует IPropertyChangeNotifier
. Если вызов этого метода включает параметр property
, представление может оптимизировать его механизм уведомления. В противном случае оно может выполнить простое обновление всего представления.
Параметры
item:Object — Элемент представления, который был обновлен.
| |
property:Object (default = null ) — Имя обновленного свойства.
| |
oldValue:Object (default = null ) — Старое значение данного свойства. (Если свойство равно null, это может быть старым значением элемента.)
| |
newValue:Object (default = null ) — Новое значение данного свойства. (Если свойство имело значение null, его можно не указывать, поскольку предполагается, что элемент является новым значением.)
|
Связанные элементы API
refresh | () | метод |
public function refresh():Boolean
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Применяет сортировку и фильтр к представлению. ICollectionView не обнаруживает автоматически изменения сортировки или фильтра, поэтому для обновления представления после установки свойства sort
или filterFunction
следует вызвать метод refresh()
. Если в реализации ICollectionView также используется интерфейс IMXMLObject, следует вызвать метод refresh()
из метода initialized()
.
Возвращает true
, если обновление было успешным, и false
, если сортировка еще не закончена (например, элементы еще находятся в состоянии ожидания). Клиент представления должен ожидать события CollectionEvent со значением свойства CollectionEventKind.REFRESH
, равным kind
для обеспечения завершения операции refresh()
.
Boolean — Значение равно true , если refresh() был завершен; в противном случае значение равно false .
|
collectionChange | Событие |
mx.events.CollectionEvent
свойство CollectionEvent.type =
mx.events.CollectionEvent.COLLECTION_CHANGE
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Передается при обновлении ICollectionView.
Константа CollectionEvent.COLLECTION_CHANGE определяет значение свойстваtype
объекта события, передаваемого при изменении коллекции.
Свойства объекта события имеют следующие значения. Не все свойства являются значимыми для каждого из видов событий. Дополнительную информацию см. в подробных описаниях свойств.
Свойство | Значение |
---|---|
bubbles | false |
cancelable | false |
currentTarget | Объект, определяющий прослушиватель события, который выполняет обработку события. Например, если используется myButton.addEventListener() для регистрации прослушивателя события, значением currentTarget является myButton. |
items | Массив объектов с информацией об элементах, задействованных этим событием. Содержимое этого поля зависит от вида события; для получения подробной информации см. описание свойства items |
kind | Вид события. Допустимые значения определены в классе CollectionEventKind как константы. |
location | Местоположение внутри целевой коллекции элементов, указанное в свойстве items . |
oldLocation | прежнее местоположение элемента в коллекции, указанное в свойстве items . |
target | Объект, отправивший событие. Это не всегда тот объект, который прослушивает событие. Свойство currentTarget всегда используется для получения доступа к объекту, прослушивающему событие. |
type | CollectionEvent.COLLECTION_CHANGE |
Tue Jun 12 2018, 11:34 AM Z