【发布时间】:2016-10-29 11:15:05
【问题描述】:
我有两个时间间隔,基本上我想转换找出它们之间的区别这是我的代码。但是,它不起作用
func dateformatter(date:Double) -> String {
let timeElapsed:TimeInterval = TimeInterval(Int(date))
let timeNow:TimeInterval = TimeInterval(integerLiteral: Int64(Date().timeIntervalSince1970*1000))
let date2:Date = Date(timeIntervalSince1970: timeElapsed )
let date1:Date = Date(timeIntervalSince1970: timeNow )
let calender:Calendar = Calendar.current
let components:DateComponents = calender.dateComponents([.year, .month, .day, .hour, .minute], from: date1, to: date2)
var returnString:String = ""
print(components.second)
if components.second! < 60 {
returnString = "Just Now"
}else if components.minute! >= 1{
returnString = String(describing: components.minute) + " min ago"
}else if components.hour! >= 1{
returnString = String(describing: components.hour) + " hour ago"
}else if components.day! >= 1{
returnString = String(describing: components.day) + " days ago"
}else if components.month! >= 1{
returnString = String(describing: components.month)+" month ago"
}else if components.year! >= 1 {
returnString = String(describing: components.year)+" year ago"
}
return returnString
}
【问题讨论】:
-
组件调用时返回 nil
-
timeElapsed和timeNow参数从何而来? -
@dirtydanee 我更新看看
-
您能否具体说明
it is not works是什么意思?您收到什么错误? -
初始化
DateComponents实例时需要包含.second组件:let components: DateComponents = calender.dateComponents([.year, .month, .day, .hour, .minute, .second], from: date1, to: date2)。除此之外,请阅读可选选项和打开这些选项的安全方法(... myOptional!不安全!)。
标签: ios date swift3 nstimeinterval