getIndexByProperty (en un ArrayCollection)

A la hora de ajustar comboboxes o de encontrar un elemento en un ArrayCollection he creado una pequeña función estática a la que se le pasa el ArrayCollection en el que queremos hacer la búsqueda, la propiedad en la que queremos buscar el valor y el objeto que queremos encontrar y me devuelve el index de ese item dentro del ArrayCollection.

Lo he incluído dentro una librería de utilidades:

CODE:
  1. package com.esneo.utils
  2. {
  3.     import mx.collections.ArrayCollection;
  4.        
  5.     public class ArrayCollectionUtil
  6.     {
  7.         public static function getIndexByProperty(ac:ArrayCollection,propertyName:String,searchValue:Object):int
  8.         {
  9.             var index:int=-1;
  10.             for (var con:Number=0; con<ac.length; con++)
  11.             {
  12.                 if (ac[con][propertyName]==searchValue)
  13.                 {
  14.                     index=con;
  15.                     break;
  16.                 }
  17.             }
  18.             return index;
  19.         }
  20.     }
  21. }

Así no tendremos que buscar un item completo sino que podremos buscar el index de un item con un valor determinado en una de sus propiedades.

Leave a Reply

You must be logged in to post a comment.