Packagemx.collections
Interfacepublic interface IList extends flash.events.IEventDispatcher
Implementors ArrayList, ListCollectionView

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

A collection of items organized in an ordinal fashion. Provides access and manipulation methods based on index.

An IList may be a view onto data that has been retrieved from a remote location. When writing for a collection that may be remote, it is important to handle the case where data may not yet be available, which is indicated by the ItemPendingError.

The ICollectionView is an alternative to the IList.

See also

mx.collections.errors.ItemPendingError
mx.collections.ICollectionView
mx.collections.ListCollectionView


Public Properties
 PropertyDefined By
  length : int
[read-only] The number of items in this collection.
IList
Public Methods
 MethodDefined By
  
addItem(item:Object):void
Adds the specified item to the end of the list.
IList
  
addItemAt(item:Object, index:int):void
Adds the item at the specified index.
IList
  
getItemAt(index:int, prefetch:int = 0):Object
Gets the item at the specified index.
IList
  
getItemIndex(item:Object):int
Returns the index of the item if it is in the list such that getItemAt(index) == item.
IList
  
itemUpdated(item:Object, property:Object = null, oldValue:Object = null, newValue:Object = null):void
Notifies the view that an item has been updated.
IList
  
removeAll():void
Removes all items from the list.
IList
  
removeItemAt(index:int):Object
Removes the item at the specified index and returns it.
IList
  
setItemAt(item:Object, index:int):Object
Places the item at the specified index.
IList
  
toArray():Array
Returns an Array that is populated in the same order as the IList implementation.
IList
Events
 Event Summary Defined By
  Dispatched when the IList has been updated in some way.IList
Property Detail
lengthproperty
length:int  [read-only]

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

The number of items in this collection. 0 means no items while -1 means the length is unknown.


Implementation
    public function get length():int
Method Detail
addItem()method
public function addItem(item:Object):void

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

Adds the specified item to the end of the list. Equivalent to addItemAt(item, length).

Parameters

item:Object — The item to add.

addItemAt()method 
public function addItemAt(item:Object, index:int):void

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

Adds the item at the specified index. The index of any item greater than the index of the added item is increased by one. If the the specified index is less than zero or greater than the length of the list, a RangeError is thrown.

Parameters

item:Object — The item to place at the index.
 
index:int — The index at which to place the item.


Throws
RangeError — if index is less than 0 or greater than the length of the list.
getItemAt()method 
public function getItemAt(index:int, prefetch:int = 0):Object

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

Gets the item at the specified index.

Parameters

index:int — The index in the list from which to retrieve the item.
 
prefetch:int (default = 0) — An int indicating both the direction and number of items to fetch during the request if the item is not local.

Returns
Object — The item at that index, or null if there is none.

Throws
ItemPendingError — if the data for that index needs to be loaded from a remote location.
 
RangeError — if index < 0 or index >= length.
getItemIndex()method 
public function getItemIndex(item:Object):int

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

Returns the index of the item if it is in the list such that getItemAt(index) == item.

Note: unlike IViewCursor.findxxx() methods, The getItemIndex() method cannot take a parameter with only a subset of the fields in the item being serched for; this method always searches for an item that exactly matches the input parameter.

Parameters

item:Object — The item to find.

Returns
int — The index of the item, or -1 if the item is not in the list.
itemUpdated()method 
public function itemUpdated(item:Object, property:Object = null, oldValue:Object = null, newValue:Object = null):void

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

Notifies the view that an item has been updated. This is useful if the contents of the view do not implement IEventDispatcher and dispatches a PropertyChangeEvent. If a property is specified the view may be able to optimize its notification mechanism. Otherwise it may choose to simply refresh the whole view.

Parameters

item:Object — The item within the view that was updated.
 
property:Object (default = null) — The name of the property that was updated.
 
oldValue:Object (default = null) — The old value of that property. (If property was null, this can be the old value of the item.)
 
newValue:Object (default = null) — The new value of that property. (If property was null, there's no need to specify this as the item is assumed to be the new value.)

See also

removeAll()method 
public function removeAll():void

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

Removes all items from the list.

If any item is not local and an asynchronous operation must be performed, an ItemPendingError will be thrown.

See the ItemPendingError documentation as well as the collections documentation for more information on using the ItemPendingError.

removeItemAt()method 
public function removeItemAt(index:int):Object

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

Removes the item at the specified index and returns it. Any items that were after this index are now one index earlier.

Parameters

index:int — The index from which to remove the item.

Returns
Object — The item that was removed.

Throws
RangeError — is index is less than 0 or greater than length.
setItemAt()method 
public function setItemAt(item:Object, index:int):Object

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

Places the item at the specified index. If an item was already at that index the new item will replace it and it will be returned.

Parameters

item:Object — The new item to be placed at the specified index.
 
index:int — The index at which to place the item.

Returns
Object — The item that was replaced, or null if none.

Throws
RangeError — if index is less than 0 or greater than length.
toArray()method 
public function toArray():Array

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

Returns an Array that is populated in the same order as the IList implementation. This method can throw an ItemPendingError.

Returns
Array — The array.

Throws
ItemPendingError — If the data is not yet completely loaded from a remote location.
Event Detail
collectionChange Event
Event Object Type: mx.events.CollectionEvent
CollectionEvent.type property = mx.events.CollectionEvent.COLLECTION_CHANGE

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

Dispatched when the IList has been updated in some way.

The CollectionEvent.COLLECTION_CHANGE constant defines the value of the type property of the event object for an event that is dispatched when a collection has changed.

The properties of the event object have the following values. Not all properties are meaningful for all kinds of events. See the detailed property descriptions for more information.

PropertyValue
bubblesfalse
cancelablefalse
currentTargetThe Object that defines the event listener that handles the event. For example, if you use myButton.addEventListener() to register an event listener, myButton is the value of the currentTarget.
itemsAn Array of objects with information about the items affected by the event. The contents of this field depend on the event kind; for details see the items property
kindThe kind of event. The valid values are defined in the CollectionEventKind class as constants.
locationLocation within the target collection of the item(s) specified in the items property.
oldLocationthe previous location in the collection of the item specified in the items property.
targetThe Object that dispatched the event; it is not always the Object listening for the event. Use the currentTarget property to always access the Object listening for the event.
typeCollectionEvent.COLLECTION_CHANGE