0

我有一个多用户应用程序(聊天)(Flash CS6 AS3),其中用户列表在高峰时段有 300 多个用户,我注意到 SWF 随着用户列表的更新而变慢,并且正在删除和添加 300 多个用户。所以我的问题是,有没有办法通过删除刚刚断开连接的用户或添加连接的用户而不重新填充整个列表来更新列表组件?谢谢!

这是当前代码:

//The function gets called everytime a SYNC is sent from server (FMS)  
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];

                           list1.addItem({label:clientObj.UserName});
                     }


            }
    }
4

1 回答 1

1

您可以尝试将您的用户列表存储在 ArrayCollection 中(它具有 .addItAt() 和 .removeItemAt() 方法,可以与 .getItemIndex() 一起使用来管理底层数组的成员)

于 2013-10-10T03:58:54.637 回答