2016-06-28 59 views
-2

您好我需要將Objective-c中的這段代碼轉換爲Swift Objective-C code 但是我遇到了Date和TimeInterval對象的問題。 Swift code 斯威夫特版本:3 的Xcode版本:8.0測試版Swift中的TimeInterval

編輯: 這是一個可能的解決方案? Possible solution

編輯2: enter image description here

+0

您必須在'NSDate'的實例上調用'timeIntervalSince',但不在類NSDate上調用。否則,它不會返回'NSTimerInterval'(double)而是'NSDate'。無論如何,我認爲當你調用NSDate.timeIntervalSince(currentDate)時,XCode必須返回一個錯誤,因爲它不是類函數。 –

+0

你可以在代碼中發佈示例嗎? –

+0

我已經發布了代碼。 –

回答

1

據我的意見,你的代碼必須是:

private func updateTimer() { 
    let currentDate = NSDate() 
    let timeInterval = currentDate.timeIntervalSince(self.startDate) 
    let timerDate = NSDate(timerIntervalSince1970: timeInterval) 
} 

private func updateTimer() { 
    //we don't have to create the variable "currentDate". 
    let timeInterval = NSDate().timeIntervalSince(self.startDate) 
    let timerDate = NSDate(timerIntervalSince1970: timeInterval) 
} 
+0

完美我發佈它,因爲我編輯我的問題!謝謝! –

1

對於斯威夫特3使用日期:

private func updateTimer() { 
    let currentDate = Date() 
    let timeInterval = currentDate.timeIntervalSince(self.startDate) 
    let timerDate = Date(timeIntervalSince1970: timeInterval) 
} 
+0

NSDate仍然存在於Swift 3中,NSString,NSArray,... –