首页 文章

计时器在swift 4中无法在后台工作,有什么方法可以工作吗?

提问于
浏览
1

我试过下面的代码,但是在后台没有工作,它在地面上运行良好 . 它是从我们将app留在后台的地方开始的 .

self.timer = Timer.scheduledTimer(timeInterval: 1, target: self, selector: #selector(self.updateTimer), userInfo: nil, repeats: true)

func updateTimer()
{
    let minute = (time / 60) % 60
    let second = time % 60
    let hours = (time / 3600)
    time += 1
    self.lblTIme.text = String(format: "%02d:%02d:%02d", hours, minute, second)
}

1 回答

  • 0

    解决这个问题的诀窍是不要自己管理时间,让iOS为你做 .

    在日期中保存时间(从您想要开始计数开始),并根据保存日期和当前日期( Date() )的差异计算经过时间 .

    这对代码更加清晰,并且可以帮助您在应用程序背景时停止计时器 .

相关问题