win*_*ton 17 firebase swift google-cloud-firestore
我有一个保存在Firestore字段中的日期作为我想要转换为Swift中的日期的时间戳:
June 19,2018 at 7:20:21 PM UTC-4
我尝试了以下但是我收到一个错误:
let date = Date(timeIntervalSince1970: postTimestamp as! TimeInterval)
错误:
Could not cast value of type 'FIRTimestamp' (0x104fa8b98) to 'NSNumber'
我想转换为Date的原因是我可以使用此Date扩展来模仿您在Instagram帖子上看到的时间戳:
extension Date {
func timeAgoDisplay() -> String {
let secondsAgo = Int(Date().timeIntervalSince(self))
let minute = 60
let hour = 60 * minute
let day = 24 * hour
let week = 7 * day
if secondsAgo < minute {
return "\(secondsAgo) seconds ago"
} else if secondsAgo < hour {
return "\(secondsAgo / minute) minutes ago"
} else if secondsAgo < day {
return "\(secondsAgo / hour) hours ago"
} else if secondsAgo < week {
return "\(secondsAgo / day) days ago"
}
return "\(secondsAgo / week) weeks ago"
}
}
Run Code Online (Sandbox Code Playgroud)
rma*_*ddy 24
要么:
let date = postTimestamp.dateValue()
Run Code Online (Sandbox Code Playgroud)
或者你可以这样做:
let date = Date(timeIntervalSince1970: postTimestamp.seconds)
Run Code Online (Sandbox Code Playgroud)
请参阅时间戳参考文档.
| 归档时间: |
|
| 查看次数: |
7325 次 |
| 最近记录: |