我正在尝试基于两次的差值来计算发送通知的剩余时间,下面的第一个变量的输出为:2020-07-14 13:31:00 +0000
,我想减去Date()-这样。以下是我正在尝试的方法:
let prevMealEatenInDateFormat = self.myFormatters.convertStringToDate(inputDate: previousMeal.eaten!)
let newTime = Date() - prevMealEatenInDateFormat
但我收到此错误:Cannot convert value of type 'Date' to expected argument type 'TimeInterval' (aka 'Double')
这是怎么回事?我需要剩下几个小时的剩余时间
这是convertStringToDate
的功能:
func convertStringToDate(inputDate: String) -> Date {
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "d MMM y, hh:mm a"
dateFormatter.amSymbol = "AM"
dateFormatter.pmSymbol = "PM"
let newDate = dateFormatter.date(from: inputDate)
return newDate!
}
答案 0 :(得分:0)
我通过以下实现解决了该问题:
let currentDate = Date()
let hourRemaining = currentDate.timeIntervalSince(prevMealEatenInDateFormat)