首页 > 解决方案 > 带有 Swift Date 的倒数计时器

问题描述

我正在使用 Foundation Date结构在 Swift 中实现一个简单的倒数计时器以提高精度。我通过将当前时间与结束时间进行比较并在差异大于零时循环来做到这一点。这是我的代码:

var timerSeconds = 15.0
var startTime = Date()

var endTime = Date(timeIntervalSinceNow: timerSeconds)


print("Start time is \(startTime)")
print("End time is \(endTime)")

var timeRemaining = Date().distance(to: endTime)
while (timeRemaining > 0) {
    print("Time remaining is \(Int(timeRemaining) + 1)")
    sleep(1)
    timeRemaining = Date().distance(to: endTime)
}
print("Done")

这是很好地利用 Date 的函数来实现计时器吗?有没有更好的方法使用日期来做到这一点?

标签: swiftdate

解决方案


推荐阅读