如何限制dataProvider AS3中收到的项目数量

时间:2014-02-09 17:35:48

标签: javascript actionscript-3 flash as3crypto

*你好!我需要在列表组件中显示的dataProvider上只填充100个项目。即使项目超过500甚至1000,我只需要100个项目,首先是所有相机都打开的项目,然后填写其余部分以完成100个项目在DataProvider上。 使用ActionScript 3.0(Flash CC):

更新:基本上,我需要的是:我在flash中有一个videochat应用程序,所以当有数百个用户时,由于列表组件填充了数百个项目(用户),应用程序会变慢,所以我会喜欢列表中至少有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 个答案:

答案 0 :(得分:0)

我不确定您的意图是什么,但您可以通过实施如下全局计数器来限制数据提供者中的项目数量:

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;
             }
        }

    }
}