【发布时间】:2013-09-17 18:38:46
【问题描述】:
我想延迟 MOAI 中循环的连续迭代。我尝试使用计时器来延迟调用循环,并在我的主循环中放置一个空循环。在后一种情况下,它只是在进行外循环之前经过内循环的所有迭代。结果是,它在主循环的第一次迭代处停止,然后经过内循环,最后执行主循环。如何阻止它发生?
【问题讨论】:
-
也许您应该澄清您想要实现的目标?
我想延迟 MOAI 中循环的连续迭代。我尝试使用计时器来延迟调用循环,并在我的主循环中放置一个空循环。在后一种情况下,它只是在进行外循环之前经过内循环的所有迭代。结果是,它在主循环的第一次迭代处停止,然后经过内循环,最后执行主循环。如何阻止它发生?
【问题讨论】:
查看代码会很有用,但是假设您将循环包装到 MOAICoroutine 中,您可以使用 coroutine.yield() 退出循环,然后在满足延迟条件时使用 coroutine.resume() 返回它.由于它不是“忙碌”循环,因此您的应用程序可能会继续处理其他任务。
【讨论】:
您的问题不是很清楚,但我怀疑您应该在计时器上拨打MOAICoroutine.blockOnAction,例如:
local timer = MOAITimer.new()
timer:setSpan(5)
MOAICoroutine.blockOnAction(timer:start())
【讨论】: