无论用户设备上安装的设置时区如何,您如何才能获得准确的莫斯科时间?
private func isItOpenNow() -> Bool? {
let date = Date()
let components = Calendar.current.dateComponents([.weekday, .hour], from: date)
// TODO: здесь нужно вытаскивать именно московское время
if let weekday = components.weekday, let hour = components.hour {
if weekday != 2 { // Пн - выходной
if hour >= 10 && hour < 18 {
return true
}
}
return false
}
return nil
}
可能是这样?
像这样重写这个方法:
那些。相反
Calendar.current.dateComponents,您可以使用DateFormatter为所需时区配置的那个正是针对这种情况
dateComponents(in:from:):一切都可以用 来完成
DateComponents,而无需通过格式化程序(每次调用函数时都会在那里创建)将日期转换为字符串。