2015-12-24 20 views
1

我使用UIApplicationSignificantTimeChangeNotification检测当一天的变化:如何检测月/年变化

NSNotificationCenter.defaultCenter().addObserver(self, selector: "dayChanged:", name: UIApplicationSignificantTimeChangeNotification, object: nil) 

@objc func dayChanged(notification: NSNotification){ 

} 

里面的dayChanged处理我希望测试新的一天是新的一个月的第一天或新年的第一天。

我应该测试如果NSCalendar.currentCalendar().components(NSCalendarUnit.Day, fromDate: NSDate()).day等于1,但如何区分月份和年份?

+0

减去一天,并检查它是否是31/12? – milo526

+0

检查月份是否是第一个 - 然后你有新的一年,如果没有,那么你有新的一个月,这样简单。 – sunshinejr

+0

@ sunshine:我喜欢这个,你可以添加为答案,以便我可以接受它。 – Kobe

回答

1

只要检查月份是否是第一次 - 那么你有新的一年,如果不是,那么你有新的一个月。