我正在开发倒计时器在我的应用程序,但我不知道它为什么不工作。倒数计时器迅速
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”,时间应该从该日期和小时开始倒数,而不是从现在开始。
请勿使用'dateFromString'来形成日期。使用日期组件。 – matt