【发布时间】:2009-03-23 00:07:18
【问题描述】:
对于 Flash Player 9+ 的 ActionScript3,在恰好一帧之后调用“一次性”函数的最佳方式是什么?
我知道 Timer 类及其用途,以及 Flex UIComponents 上的 callLater 方法(浏览源代码,在这种情况下看起来效率不高)。我也知道 setTimeout(在 flash.utils 中)。
Timer 类和 setTimeout 实用程序都是基于时间的,那么我们如何保证我们的函数会在一帧之后被调用?
从我有限的测试来看,传递给 setTimeout 的函数似乎只在至少一帧后执行(尝试将延迟设置为 0)。但这不能保证。
当然,我们可以从 DisplayObject 监听 Event.ENTER_FRAME 事件,但这对于一次性延迟函数调用来说似乎有点过头了。
【问题讨论】:
标签: apache-flex actionscript-3 flash timing