如何限制数据提供程序 AS3 中接收的项目数量



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

更新:基本上,我需要的是:我有一个 Flash 中的视频聊天应用程序,因此当有数百个用户时,由于列表组件填充了数百个项目(用户),应用程序会变慢,所以我希望列表中至少有 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});
                      }

            }
    }

感谢您抽出宝贵时间!

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

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

最新更新