本周的天数列表

时间:2016-03-30 23:44:29

标签: ios swift date time nsdate

我需要一个星期几的列表(周一从星期一开始)列出时间卡列表。我不知道如何实现这一目标。我已经尝试了一些dateByAddingUnit并从那里减去,但它没有产生我想要的结果。

知道如何获取日期列表吗? (即周一将于2016年3月28日星期二,2016年3月29日星期二等等)

1 个答案:

答案 0 :(得分:0)

编辑:错过了您希望一周始终在星期一开始

let gregorian = NSCalendar(calendarIdentifier: NSCalendarIdentifierGregorian)!
let today = gregorian.startOfDayForDate(NSDate())

let startOfWeek: NSDate    
if gregorian.component(.Weekday, fromDate: today) == 2 {
    // Today is Monday
    startOfWeek = today
} else {
    // Find the last Monday prior to today
    startOfWeek = gregorian.nextDateAfterDate(today, matchingUnit: .Weekday, value: 2, options: [.SearchBackwards, .MatchPreviousTimePreservingSmallerUnits])!
}