我正在尝试更新已弃用的代码:
elapsedTime = CFAbsoluteTimeGetGregorianDate((totalElapsedTime + totalElapsedTime2), nil)
我想我可以简单地将公历日期更改为NSDate并使用dateByAddingTimeInterval:
elapsedTime = elapsedTime.dateByAddingTimeInterval((totalElapsedTime + totalElapsedTime2))
此代码可以编译,但由于elapsedTime为nil而崩溃。
是否有一些其他的方法,我应该使用来取代CFAbsoluteTimeGetGregorianDate。我已经通过NSDate库,并作出尝试,但无处可去。
我将我的代码更改为以下代码,它像魅力一样工作。我在网上找不到这个,所以希望这能帮助别人。
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)
}