swift定时器

2023-02-05  本文已影响0人  太平洋_cfd2
  1. 全局可以一直存在一个主定时器

  2. 每个cell单独控制自己的time值(一个数组去控制)

  3. 因为每个app都可能存在回到后台,或切换app后再回到app前台,这时候可能app都定时器才继续之前的操作,但实际时间已经过去好几秒或好几十秒

  4. 因此,在定时器计算时间差时,应该是

最后时间 = 截止倒计时+当前时间
然后每个循环时,拿到当前时间,用最后时间减掉,就是时间差
或者直接用swift的时间差方法:

let lastTime = lastTimes[id]?.string.int ?? 0
            
let date = Date.init(milliseconds: lastTime)

let time = Int(ceilf(Float(date.secondsSince(Date()))))

ps:参考:过小低

上一篇 下一篇

猜你喜欢

热点阅读