apache-flex - Flex如何使用callLater?

标签 apache-flex

在我的 flex 移动应用程序中,我有一个循环运行超过 100 次迭代。在每次迭代中,我都会更新特定标签的一些属性。由于循环很耗时,我需要在每次迭代时更新屏幕并显示中间结果。如何打破循环并刷新显示列表?

function theFunction():void{
 for var i:int = 0; i < n; i++{
  doBusyStuff();
  label_1.text = "iteration"+" i";
 }
}

最佳答案

在那种情况下,我更喜欢使用 flash.utils.setTimeout()

import flash.utils.setTimeout;

function theFunction(limit:int, current:int = 0):void 
{
    if (current >= limit)
        return;

    doBusyStuff();
    label_1.text = "iteration "+ current.toString();

    setTimeout(theFunction, 0, limit, current+1);
}

但是,setTimeout()callLater() 都取决于滴答或帧速率,这意味着它们不会尽可能快地执行。因此,如果您还希望它运行得更快,您应该让它在每次调用时运行几个循环。

关于apache-flex - Flex如何使用callLater?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23341584/

相关文章:

apache-flex - 我们可以将系统图标添加到flex应用程序中吗

apache-flex - Actionscript 编译器问题 : Error #1068: Array and * cannot be reconciled

android - 使用 applicationDPI mxml 属性集在 Google Play 上发布 Flex 应用程序

java - 无法连接到远程 VM。连接被拒绝。尝试在 Flash Builder 4.7 中调试远程 Java 应用程序时

apache-flex - 闪存/弹性应用程序 : how can i strip trace messages?

actionscript-3 - ActionScript/Flex 是否有一个聪明的空指针检查器实用程序类?

actionscript-3 - actionscript 3 : how to pass array by reference to function, 并让该函数更新它?

apache-flex - Flex 3 键盘事件处理

actionscript-3 - 对象和*之间的区别?

java - 是否有可用于 Java、C++ 和 JS 的可下载的 eclipse 包