所以我正在制作一个基本的周选择器,你可以选择一周的数字和年份,并从周开始点获得相应的日期.
一个基本的测试场景
let calendar = NSCalendar.currentCalendar() let components = NSDateComponents() components.year = 2015 components.weekOfYear = 15 print(calendar.dateFromComponents(components)!)
你可以看到,我把想要的年份设置为2015年,将通缉周设置为15,但我得到的结果是:“2014-12-31 23:00:00 0000”
……那真的让我感到茫然.无论我选择哪个星期和一年,它总会在12月和12月之间关闭.
预先感谢您的帮助.
weekOfYear与yearForWeekOfYear一起使用:
let calendar = NSCalendar.currentCalendar() let components = NSDateComponents() components.yearForWeekOfYear = 2015 components.weekOfYear = 15 print(calendar.dateFromComponents(components)!) // 2015-04-05 22:00:00 +0000
Swift 3及更高版本的更新:
let calendar = Calendar.current var components = DateComponents() components.yearForWeekOfYear = 2015 components.weekOfYear = 15 print(calendar.date(from: components)!)