我正在尝试更新已弃用的代码:
elapsedTime = CFAbsoluteTimeGetGregorianDate((totalElapsedTime + totalElapsedTime2), nil)
我以为我可以简单地将格里高利日期更改为NSDate并使用dateByAddingTimeInterval:
elapsedTime = elapsedTime.dateByAddingTimeInterval((totalElapsedTime + totalElapsedTime2))
此代码编译但由于elapsedTime为nil而崩溃。
我是否应该使用其他方法来替换CFAbsoluteTimeGetGregorianDate。我已经通过NSDate库并尝试但无处可去。
答案 0 :(得分:0)
我将我的代码更改为以下内容,它就像一个魅力。我无法在网上找到这个,所以希望这会有助于其他人。
let myTimeInterval = NSTimeInterval((totalElapsedTime + totalElapsedTime2))
let formattedDateString: String = stringFromTimeInterval(myTimeInterval)
和stringFromTimeInterval函数:
func stringFromTimeInterval(interval:NSTimeInterval) -> String {
let ti = Int(interval)
let ms = Int((interval % 1) * 100)
let seconds = ti % 60
let minutes = (ti / 60) % 60
let hours = (ti / 3600)
return String(format: "%0.2d:%0.2d:%0.2d.%0.2d",hours,minutes,seconds,ms)
}