I have an ArrayCollection of objects that I am receiving updates on.
On update, I get the updated item as an argument and I need to 
replace the old item in the list.
Right now I am cycling through the ArrayCollection until i find the 
id of the item and returning the index, then replacing the item at 
that index.
Any thoughts on a better way to do this?


public var itemCollection:ArrayCollection;

public function onUpdateReceived(newItem:Object):void {
  findIndex(newItem);
  if(index > -1)
    itemCollection.setItemAt(newItem, index);
}

public function findIndex(newItem:Object):Number {

  for each(var itemInCollection:Object in itemCollection){
    if(itemInCollection.id == newItem.id) return 
          itemCollection.getItemIndex(itemInCollection);
  }

  return -1;
}



Reply via email to