| 包 | mx.collections |
| 接口 | public interface IList extends IEventDispatcher |
| 实现器 | ListCollectionView |
IList 可以是从远程位置检索到的数据的视图。在对可能位于远程位置的集合进行写入时,必须处理数据尚不可用的情况,ItemPendingError 会指示这一情况。
ICollectionView 可以替代 IList。
另请参见
| 方法 | 定义方 | ||
|---|---|---|---|
![]() | addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void 使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。 | IEventDispatcher | |
向列表末尾添加指定项目。 | IList | ||
在指定的索引处添加项目。 | IList | ||
![]() | 将事件调度到事件流中。 | IEventDispatcher | |
获取指定索引处的项目。 | IList | ||
如果项目位于列表中(这样的话 getItemAt(index) == item),则返回该项目的索引。 | IList | ||
![]() | 检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。 | IEventDispatcher | |
itemUpdated(item:Object, property:Object = null, oldValue:Object = null, newValue:Object = null):void 通知视图,某个项目已更新。 | IList | ||
删除列表中的所有项目。 | IList | ||
![]() | 从 EventDispatcher 对象中删除侦听器。 | IEventDispatcher | |
删除指定索引处的项目并返回该项目。 | IList | ||
在指定的索引处放置项目。 | IList | ||
返回与 IList 实现的填充顺序相同的 Array。 | IList | ||
![]() | 检查是否用此 EventDispatcher 对象或其任何始祖为指定事件类型注册了事件侦听器。 | IEventDispatcher | |
| 事件 | 摘要 | 定义方 | ||
|---|---|---|---|---|
| 以某种方式更新 IList 后调度。 | IList | |||
| length | 属性 |
| addItem | () | 方法 |
public function addItem(item:Object):void
向列表末尾添加指定项目。等效于 addItemAt(item, length)。
参数
item:Object — 要添加的项目。 |
| addItemAt | () | 方法 |
public function addItemAt(item:Object, index:int):void在指定的索引处添加项目。任何大于已添加项目的索引的项目索引都会增加 1。如果指定索引小于零或者大于列表长度,则会引发 RangeError。
参数
item:Object — 要置于索引处的项目。 | |
index:int — 要放置项目的索引位置。 |
RangeError — 如果索引小于 0 或大于列表长度。 |
| getItemAt | () | 方法 |
public function getItemAt(index:int, prefetch:int = 0):Object获取指定索引处的项目。
参数
index:int — 要从中检索项目的列表中的索引。 | |
prefetch:int (default = 0) —
一个 int,指示当项目不是本地项目时,在请求期间要获取的项目的方向和编号。
|
Object —
此索引处的项目;如果没有项目,则为 null。
|
ItemPendingError — 如果需要从远程位置加载此索引的数据。 | |
RangeError —
如果 index < 0 或 index >= length。
|
| getItemIndex | () | 方法 |
public function getItemIndex(item:Object):int如果项目位于列表中(这样的话 getItemAt(index) == item),则返回该项目的索引。
注意:与 IViewCursor.findxxx() 方法不同,getItemIndex() 方法不能在要搜索的项目中使用只带字段子集的参数;此方法始终搜索与输入参数完全匹配的项目。
参数
item:Object — 要查找的项目。 |
int — 该项目的索引;如果该项目不在列表中,则为 -1。 |
| itemUpdated | () | 方法 |
public function itemUpdated(item:Object, property:Object = null, oldValue:Object = null, newValue:Object = null):void
通知视图,某个项目已更新。如果视图的内容不实现 IEventDispatcher 并调度 PropertyChangeEvent,则此方法很有用。如果已指定属性,该视图也许能优化其通知机制。否则,它可能选择仅刷新整个视图。
参数
item:Object — 已在视图中更新的项目。 | |
property:Object (default = null) — 已更新属性的名称。 | |
oldValue:Object (default = null) — 该属性的旧值。(如果属性为 null,则它可以是该项目的旧值。) | |
newValue:Object (default = null) — 该属性的新值。(如果属性为 null,则无需指定它,因为已假定该项目为新值。) |
另请参见
| removeAll | () | 方法 |
public function removeAll():void删除列表中的所有项目。
如果存有不是本地项目的项目,并且必须执行异步操作,则会引发 ItemPendingError。
有关如何使用 ItemPendingError 的详细信息,请参阅 ItemPendingError 文档和集合文档。
| removeItemAt | () | 方法 |
public function removeItemAt(index:int):Object删除指定索引处的项目并返回该项目。原先位于此索引之后的所有项目的索引现在都向前移动一个位置。
参数
index:int — 要从中删除项目的索引。 |
Object — 被删除的项目。 |
RangeError — 如果索引小于 0 或大于长度。 |
| setItemAt | () | 方法 |
public function setItemAt(item:Object, index:int):Object在指定的索引处放置项目。如果此索引处已存在项目,新项目将替代该项目,并返回该项目。
参数
item:Object — 要在指定索引处放置的新项目。 | |
index:int — 要放置项目的索引位置。 |
Object —
被替换的项目;如果没有项目,则为 null。
|
RangeError — 如果索引小于 0 或大于长度。 |
| toArray | () | 方法 |
public function toArray():Array返回与 IList 实现的填充顺序相同的 Array。此方法可能会引发 ItemPendingError。
返回Array — 数组。 |
ItemPendingError — 如果尚未从远程位置完全加载数据。 |
| collectionChange | 事件 |
mx.events.CollectionEventmx.events.CollectionEvent.COLLECTION_CHANGE以某种方式更新 IList 后调度。
CollectionEvent.COLLECTION_CHANGE 常数可为在集合发生更改时调度的事件定义事件对象的type 属性值。
事件对象的属性具有下列值。并非所有属性对于各种事件都有意义。有关详细信息,请参阅详细的属性说明。
| 属性 | 值 |
|---|---|
bubbles
| false |
cancelable
| false |
currentTarget
|
用于定义处理该事件的事件侦听器的 Object。例如,如果您使用 myButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 的值。
|
items
|
对象 Array,其中包含有关受事件影响的项目的信息。此字段的内容取决于事件的类型;有关详细信息,请参阅 items 属性
|
kind
| 事件的类型。有效值定义为 CollectionEventKind 类中的常数。 |
location
|
items 属性中指定的项目在目标集合中的位置。
|
oldLocation
|
items 属性中指定的项目原来在目标集合中的位置。
|
target
|
调度该事件的 Object;它不一定是侦听该事件的 Object。使用 currentTarget 属性始终可以访问侦听事件的 Object。
|
type
| CollectionEvent.COLLECTION_CHANGE |