gpt4 book ai didi

swift - 倒数计时器快速

转载 作者:行者123 更新时间:2023-11-28 16:19:16 25 4
gpt4 key购买 nike

我正在我的应用程序中开发一个倒数计时器,但我不知道为什么它不起作用。

let formatter = NSDateFormatter()
let userCalendar = NSCalendar.currentCalendar()
let requestedComponent: NSCalendarUnit = [
//NSCalendarUnit.Month,
//NSCalendarUnit.Day,
NSCalendarUnit.Hour,
NSCalendarUnit.Minute,
NSCalendarUnit.Second

]

func printTime()
{
formatter.dateFormat = "MM/dd/yy hh:mm:ss a"
//let startTime = NSDate()
let startTime = formatter.dateFromString("05/12/16 0:00:00 a")
let endTime = formatter.dateFromString("12/25/16 8:00:00 a")
let timeDifference = userCalendar.components(requestedComponent, fromDate: startTime!, toDate: endTime!, options: [])
TimeLabel.text = " \(timeDifference.hour)Hours \(timeDifference.minute)Minutes \(timeDifference.second) Seconds"
}


let timer = NSTimer.scheduledTimerWithTimeInterval(1.0, target: self, selector: #selector(printTime), userInfo: nil, repeats: true)
timer.fire()

如果我离开:

let startTime = NSDate()

和评论

let startTime = formatter.dateFromString("05/12/16 0:00:00 a")

它工作完美,但它从当前的时间和日期开始。我需要一个特定的日期和时间,在我的例子中是“05/12/16 0:00:00 a”,时间应该从那个日期和时间开始倒计时,而不是从现在开始。

最佳答案

没有发生任何事情的原因是因为您总是比较相同的两个日期:startTimeendTime。这两个日期之间的差异将始终完全相同。如果您希望有一个渐进的倒计时,则需要相应地更改一个或另一个。 NSDate() 版本起作用的原因是因为 startTime 正在更改 — 无论当前日期是什么。

关于swift - 倒数计时器快速,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38685736/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com