Как ограничить количество предметов, полученных в dataProvider AS3

* Привет! Мне нужно заполнить только 100 элементов в dataProvider, который отображается в компоненте списка. даже если элементов больше 500 или даже 1000, мне нужно только 100 элементов, сначала все элементы с включенной камерой, а затем заполнить оставшиеся до полного 100, чтобы быть в DataProvider. Использование ActionScript 3.0 (Flash CC):

ОБНОВЛЕНИЕ: в основном, что мне нужно: у меня есть приложение видеочата во флеш-памяти, поэтому, когда сотни пользователей работают, приложение замедляется из-за того, что компонент списка заполняет сотни элементов (пользователей), поэтому я хотел бы иметь как минимум 100 пользователи в списке, отдавая приоритет пользователям потокового видео. имеет ли это смысл? :) спасибо - Алекс только сейчас редактирую
*

Код:

function syncEventHandler(event:SyncEvent){
        list1.removeAll();

             for (var i in users_so.data){

                 if (users_so.data[i] != null)
                      {
                          var clientObj = users_so.data[i];
                //if user is streaming add it first then complete 100 with the rest.
                          list1.addItem({label:clientObj.UserName});
                      }


            }
    }

Спасибо, что нашли время для этого!

1 ответ

Я не уверен, каково ваше намерение, но вы можете ограничить количество элементов в поставщике данных, внедрив глобальный счетчик следующим образом:

function syncEventHandler(event:SyncEvent)
{
    list1.removeAll();
    counter = 0;
    for (var i in users_so.data)
    {

        if (users_so.data[i] != null)
        {
             if(counter < 100)
             {
                 var clientObj = users_so.data[i];
                 //if user is streaming add it first then complete 100 with the rest.
                 list1.addItem({label:clientObj.UserName});
                 counter ++;
             }
             else
             {
                 break;
             }
        }

    }
}
Другие вопросы по тегам