首页 > 解决方案 > 将下周(7 天)从当前 var(Int)添加到 swiftui 中的 10 位 unix 时间戳

问题描述

为了允许用户每周更改一次用户名,我想添加限制。所以我有 loginUpdateDate var,它返回 10 位时间戳(Int),没关系。如何将 7 天添加到此变量?不是从一周的开始,即从重写这个变量的那一刻开始。我正在尝试 lastLoginUpdate * 24 * 60 * 60 但似乎错误(我正在学习)。所以我需要这个 Int 变量(10 位)加上 7 天。然后从 tis 变量中每天减去一天(向用户显示下一次登录更改可用性还剩多少天)

标签: iosswift

解决方案


根据您想要的准确性,按照评论中的建议将 7 * 24 * 60 添加到您的时间戳是一种方法。

请注意,您还可以从时间戳创建日期并使用此处所述的适当日期函数:如何将 1 天添加到 NSDate?

如果您的 loginUpdateDate 是 Swift 日期,只需使用链接中的代码。否则使用时间戳(10 位整数)创建日期:

let lastLoginDate = Date(timeIntervalSince1970: lastLoginUpdate)
var dayComponent    = DateComponents()
dayComponent.day    = 1 // For removing one day (yesterday): -1
let theCalendar     = Calendar.current
let nextAllowedDate        = theCalendar.date(byAdding: dayComponent, to: lastLoginDate)

推荐阅读