如何检查Swift是否已经过了24小时

时间:2017-07-12 01:33:23

标签: swift3 nsdate

我必须在我的应用程序中实现,在用户保存录制后,我将必须确定从录制的创建日期起是否已经过了24小时。到目前为止,我目前只是确定当前日期是否不等于创建日期。我非常感谢任何人的帮助,提前谢谢。

2 个答案:

答案 0 :(得分:19)

您可以使用UserDefault在创建记录时保存日期。语法将是

UserDefaults.standard.set(Date(), forKey:"creationTime")

每当您想要检查保存的日期时,请以这种方式检索

if let date = UserDefaults.standard.object(forKey: "creationTime") as? Date {
    if let diff = Calendar.current.dateComponents([.hour], from: date, to: Date()).hour, diff > 24 {
        //do something
    }
}

答案 1 :(得分:2)

您可以轻松地检查自日期以来的时间间隔是否大于或等于24小时的TTL。

let start = Date()
let timeToLive: TimeInterval = 60 * 60 * 24 // 60 seconds * 60 minutes * 24 hours

let isExpired = Date().timeIntervalSince(start) >= timeToLive