我有一个NSTimer,它从2小时到0倒数。
这是我的一些代码:
var timer = NSTimer()
let timeInterval:NSTimeInterval = 0.5
let timerEnd:NSTimeInterval = 0.0
var timeCount:NSTimeInterval = 7200.0 // seconds or 2 hours
// TimeString Function
func timeString(time:NSTimeInterval) -> String {
let minutes = Int(time) / 60
let seconds = time - Double(minutes) * 60
let secondsFraction = seconds - Double(Int(seconds))
return String(format:"%02i:%02i.%01i",minutes,Int(seconds),Int(secondsFraction * 10.0))
}
计时器标签为:
TimerLabel.text = "Time: \(timeString(timeCount))"
但是,我的计时器标签显示为:
Time: 200:59.0
如何格式化计时器标签,使其看起来像这样:
Time: 01:59:59 // (which is hours:minutes:seconds)?
[请注意,我的倒数计时器没有问题,我只需要知道如何使用TimeString函数更改时间格式。]
编辑:有人提到我的问题可能是此问题的重复:Swift-iOS-日期和时间采用不同格式。但是,我在问如何使用上面给出的TimeString函数更改时间格式。我不是在要求另一种方法。
例如:
let minutes = Int(time) / 60
给我200分钟 等等
您的计算都是错误的。
let hours = Int(time) / 3600
let minutes = Int(time) / 60 % 60
let seconds = Int(time) % 60
return String(format:"%02i:%02i:%02i", hours, minutes, seconds)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句