2015-12-24 54 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

只要檢查月份是否是第一次 - 那麼你有新的一年,如果不是,那麼你有新的一個月。