所以我正在做一个基本的星期选择器,您可以在其中选择星期数和年份,并从星期开始点获取相应的日期。
基本测试方案
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月关闭。
预先感谢您的帮助。
weekOfYear与yearForWeekOfYear以下产品配合使用:
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
更新 斯威夫特3 及更高版本:
let calendar = Calendar.current var components = DateComponents() components.yearForWeekOfYear = 2015 components.weekOfYear = 15 print(calendar.date(from: components)!)