3

timerランチした s をすべて削除するにはどうすればよいtimer.performWithDelayですか?

私が試したこと:

for id in pairs(timer) do
    print("timer: " .. id)
    if id ~= nil then
        timer.cancel( id )
    end
end
4

1 に答える 1

3

タイマー テーブルのプライベート変数の使用:

for id, value in pairs(timer._runlist) do
     timer.cancel(value)
end

それ以外の場合、最適な「正当な」方法は、タイマー ID を独自のテーブルに格納することです。たとえば、次のようにします。タイマーの追加:

aTimers = {}
aTimers[0] = timer.performWithDelay( 1000, yourFunction, 0 )

タイマーのキャンセル:

timer.cancel(aTimers[0])
于 2013-10-18T14:07:24.620 に答える