2015-01-09 142 views
0

我試圖創建一個應用程序,它將以格式HH:MM:SS顯示時間。'字符串'不能轉換爲'Int'

let date = NSDate() 
let calendar = NSCalendar.currentCalendar() 
let components = calendar.components(.CalendarUnitHour | .CalendarUnitMinute |      
.CalendarUnitMonth | .CalendarUnitYear | .CalendarUnitDay | .CalendarUnitSecond, 
fromDate:  date) 
let hour = Int(components.hour) 
let minutes = Int(components.minute) 
let second = Int(components.second) 
let col = ":" 
let time = (hour+col+minutes+col+second) 

在線 「讓時間=(小時+山坳+分+山坳+秒)」 我不斷收到錯誤「‘字符串’是無法轉換爲‘廉政’」 任何幫助將是很大的讚賞 謝謝, 尼克

+0

另外'components.hour'&CO的類型已經'Int' - 不需要使用'Int(components.hour)'。 – 2015-01-09 20:27:05

+0

而在'calendar.components(...)'中,您只需指定實際使用的組件(小時,分鐘,秒)。 – 2015-01-09 20:44:09

回答

3

因爲你想增加你得到的錯誤(又名,使用+StringInt實例在一起。

你也可以使用字符串插值:

let time = "\(hour):\(minutes):\(second)" 

或更好,但瞭解NSDateFormatter,它處理這更好:

let timeFormatter = NSDateFormatter() 
timeFormatter.dateFormat = NSDateFormatter.dateFormatFromTemplate("HH:mm:ss", options: 0, locale: NSLocale.currentLocale()) 

let time = timeFormatter.stringFromDate(date)