timer.cancel()

类型 函数
timer.*
修订 版本 2024.3703
关键词 timer, delay, cancel(计时器,延迟,取消)
另请参阅 timer.performWithDelay()

概述

取消由 timer.performWithDelay() 启动的特定计时器或具有相同标签的所有计时器。

语法

timer.cancel( whatToCancel )
whatToCancel (必填)

对象字符串 传递给 timer.performWithDelay() 的计时器 ID 或 `tag`。 注意:使用 `tag` 需要 `Solar2D 2020.3611` 或更高版本。

示例

local function listener( event )
    print( "listener called" )
end
 
timer1 = timer.performWithDelay( 2000, listener )  -- wait 2 seconds

-- sometime later...
timer.cancel( timer1 )
local function listener( event )
    print( "listener called" )
end
 
timer1 = timer.performWithDelay( 2000, listener, "red" )  -- wait 2 seconds
timer2 = timer.performWithDelay( 3000, listener, "blue" )  -- wait 3 seconds

-- sometime later...
timer.cancel( "red" )
local t = {}
function t:timer( event )
    local count = event.count
    print( "Table listener called " .. count .. " time(s)" )
    if count >= 3 then
        timer.cancel( event.source ) -- after 3rd invocation, cancel timer
    end
end
 
-- Register to call t's timer method an infinite number of times
timer.performWithDelay( 1000, t, 0 )