打开和关闭存储应用程序的时间

时间:2015-10-31 01:25:20

标签: ios

我正在开发一个客观的C商店应用。我不希望人们在一周的每一天都在不同的时间买东西。我需要一些类似的事情,“周一至周四:上午11:00 - 晚上11:00 周五至周六:上午11:00 - 凌晨12:00 太阳:上午11:00 - 晚上10:00“。

当您按下UI按钮它不会让购买过去,它会说“我们已关闭”或“稍后回来”这样的消息。

如果任何人可以提供帮助那就太棒了。

2 个答案:

答案 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
    }
}