我对如何使用timer.delay函数感到困惑。我知道第一个参数是延迟的秒数;第二个参数是是否应该重复;第三个参数是在计时器超时后使用的回调函数。根据我的理解,回调是另一个作为参数的函数。不过,defold网站上的页面给出了一个已经插入了参数的函数
callback function(self, handle, time_elapsed) timer callback function我正在尝试使用timer.delay函数,如下所示
timer.delay(5, false, pr(self, "handle", "2"))使用
function pr()
print("Function activated")发布于 2020-05-12 14:22:04
callback参数是将被调用的函数。当您的计时器触发时调用此函数。它将使用3个参数调用,如果需要,可以在回调函数中使用这些参数。
文档中的function(self, handle, time_elapsed)告诉您如何调用回调函数。第一个参数是self,第二个参数是计时器句柄,第三个参数是运行时间。
你可以这样做:
local function myCallback(obj, handle, elapsed)
print("Timer with handle " .. handle .. " triggered after " .. elapsed .. "s")
end
timer.delay(10, true, myCallback)或者简单地提供一个匿名函数:
timer.delay(10, true, function (obj, handle, elapsed)
print("Timer with handle " .. handle .. " triggered after " .. elapsed .. "s")
end)https://stackoverflow.com/questions/61741651
复制相似问题