Длина отфильтрованной коллекции ArrayCollection в ActionScript 3 / flex

Мне нужно отобразить количество элементов в компоненте List, который имеет отфильтрованную коллекцию ArrayCollection в качестве поставщика данных. Я не вижу способа узнать длину отфильтрованной коллекции. Кто-нибудь знает? Спасибо.


person JackFreud    schedule 19.11.2010    source источник


Ответы (1)


Учитывая код:

var ac:ArrayCollection = new ArrayCollection([0,1,2,3,4,5,6,7,8,9]);
ac.filterFunction =
    function(item:*):Boolean{
        return item > 3;
    };
ac.refresh();

Вы используете ac.length, чтобы получить длину отфильтрованных данных (6) и ac.list.length, чтобы получить длину сырых, неотфильтрованных данных (10).

person 2DH    schedule 19.11.2010
comment
Спасибо! Я пробовал это, но запрашивал ВО ВРЕМЯ функции фильтра, а не после вызова refresh (). Теперь все работает нормально. - person JackFreud; 22.11.2010