【发布时间】:2015-12-16 01:45:57
【问题描述】:
我正在尝试获取本周的第一天(比如本周,我应该得到 2015-09-13)。
但是我在 Apple 提供的源代码中找不到合适的功能。
代码应该是这样的......
print(getFirstDay(40)) // Should print 27
func getFirstDay(weekNumber:Int)->Int?{
let formatter = NSDateFormatter()
formatter.dateFormat = "yyyy-MM-dd"
if let todayDate = formatter.dateFromString(weekNumber) {
let myCalendar = NSCalendar(calendarIdentifier: NSCalendarIdentifierGregorian)!
let myComponents = myCalendar.dateFromComponents(.weekOfYear)
let date = myComponents.date
return date
} else {
return nil
}
}
但是上面的代码不起作用(显然),但我认为应该朝着正确的方向发展。
我怎样才能做到这一点?
/* 不重要 */ 我正在尝试在表格视图中创建一种日历应用程序,该应用程序由 4 周的部分分隔,我想知道新一周的开始日期。
【问题讨论】:
-
这里有一些代码可以找到一周的第一天:stackoverflow.com/questions/30330523/…。 – 但是我不明白您的示例 getFirstDay(40) = 27。40 可能是一年中的周数,但是 27 是多少?
-
27 是一周实际从 09/27 (MM-dd) 开始的日期,该链接对我的问题并没有真正的帮助,因为它指出“表达式的类型在没有更多上下文的情况下不明确'
-
这是为 Swift 1.2 编写的。我现在要为 Swift 2 更新它...
标签: swift calendar nsdate nsdatecomponents