在循环冻结应用程序中创建实例



我有一个电影剪辑作为ActionScript导出,我正在从循环中创建许多实例并将其添加到舞台上。

当我在移动设备上测试该应用时,循环启动时它会冻结一秒钟,然后一切都可以返回。
以下是外观的示例:

for(var i:int = 0; i < 20; i++)
{
   var mc:MC = new MC();
   mc.textField.text = "mc"+i;
   mc.y = i * mc.height;
   addChild(mc);
}

所以,我问是否有更好的方法可以不冻结?
谢谢。

提高性能的一种方法是利用"对象池模式" 重复使用已经生成的对象随着时间的推移:

这是一种软件创建设计模式,使用一组 初始化的对象可以随时准备使用 - 一个"池" - 而不是 按需分配和销毁它们。游泳池的客户将 从池中索取对象并对返回的对象进行操作 目的。客户完成后,它将对象返回到 池而不是摧毁它;这可以手动完成或 自动。

"对象池模式"上的更多信息和工作示例代码可在Adobe的网站上找到:)

最新更新