我正在开发一个客观的C商店应用。我不希望人们在一周的每一天都在不同的时间买东西。我需要一些类似的事情,“周一至周四:上午11:00 - 晚上11:00 周五至周六:上午11:00 - 凌晨12:00 太阳:上午11:00 - 晚上10:00“。
当您按下UI按钮它不会让购买过去,它会说“我们已关闭”或“稍后回来”这样的消息。
如果任何人可以提供帮助那就太棒了。
答案 0 :(得分:0)
您可以使用NSDate
方法创建新的[NSDate date]
对象来获取当前时间。如果您想了解有关该日期的某些特定信息,我建议您使用NSCalendar
的{{1}}方法获取有关时间的一些信息。您还可以使用从该方法获得的components:fromDate:
来执行比较。更多信息here on NSHipster
答案 1 :(得分:0)
@IBAction func displayStoreClosedMessage(sender: AnyObject) {
if isStoreOpenNow() {
//Show a message saying the store is OPEN
} else {
//Show a message saying the store is CLOSED
}
}
func isStoreOpenNow() -> Bool {
let components = NSCalendar.currentCalendar().components([NSCalendarUnit.Weekday, NSCalendarUnit.Hour], fromDate: NSDate())
switch components.day {
case 1: //Sun
switch components.hour {
case 11..<22: //11am - 10pm
return true
default:
return false
}
case 2...5: //Mon to Thurs
switch components.hour {
case 11..<23: //11am - 11pm
return true
default:
return false
}
case 6...7: //Sat
switch components.hour {
case 11...23: //11am - 12am
return true
default:
return false
}
default: //Just because we have to
return false
}
}