[英]Trying to convert Date formatter type (from time picker) to Integer
這里有點麻煩,我從名為 amPicker_out 的日期選擇器中獲取當前時間
我正在使用日期格式化程序來獲取將這兩位時間轉換為 integer 所需的分鍾數。 當我嘗試轉換它時,我收到此錯誤
“無法使用類型為 '(DateFormatter)' 的參數列表調用類型為 'Int' 的初始化程序”
有什么想法我哪里出錯了嗎?
func getTime()
{
let amPickerMinutes = DateFormatter()
amPickerMinutes.dateFormat = "mm"
// convert amPickerMinutes to Integer
let amPickerMinutesInt = Int(amPickerMinutes)
print(amPickerMinutesInt)
}
您正在將日期格式化程序 object 轉換為 Int,因此會出現警告。 需要做類似的事情:
func getTime() {
let amPickerMinutes = DateFormatter()
amPickerMinutes.dateFormat = "mm"
// convert amPickerMinutes to Integer
let dateString = amPickerMinutes.string(from: amPicker_out.date)
if let amPickerMinutesInt = Int(dateString) {
print(amPickerMinutesInt)
}
// Prefer using calendar instead
let amPickerMinutesInt = Calendar.current.component(.minute, from: amPicker_out.date)
print(amPickerMinutesInt)
}
您正在嘗試將 DateTimeFormatter 轉換為 Int。 您必須使用此格式化程序格式化某些日期,然后將此值轉換為 Int
func getTime(date:Date){
let amPickerMinutes = DateFormatter()
amPickerMinutes.dateFormat = "mm"
let minutes = amPickerMinutes.string(from: date)
let amPickerMinutesInt = Int(minutes)
print(amPickerMinutesInt)
}
getTime(date: Date()) // call your function parsing your date picker value
要獲取分鍾,您必須調用stringFromDate
傳遞日期
let amPickerMinutes = DateFormatter()
amPickerMinutes.dateFormat = "mm"
// convert amPickerMinutes to Integer
let amPickerMinutesInt = Int(amPickerMinutes.string(from: picker.date))!
不過Calendar
提供了更方便的API
let amPickerMinutesInt = Calendar.current.component(.minute, from: picker.date)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.