Я ищу, чтобы расширить класс NSDate, поэтому я могу ссылаться на вторник каждую неделю, когда мы в настоящее время являемся NSDate.Расширение NSDate для определенного дня каждой недели
Я понимаю, что это можно сделать с помощью NSDateComponents. До сих пор у меня ниже:
extension NSDate {
var tuesday: NSDate {
let calendar = NSCalendar.currentCalendar()
let todaysDate = NSDate()
let weekdayComponents = calendar.components(.CalendarUnitWeekday | .CalendarUnitWeekdayOrdinal, fromDate: todaysDate)
weekdayComponents.weekday = 3
let returnTuesday = calendar.dateByAddingComponents(weekdayComponents, toDate: todaysDate, options: nil)
return returnTuesday!
}}
Я считаю, что CalendarUnitWeekday работа над системой, основанной индекса (т.е. воскресенье = 1, суббота = 7), поэтому я устанавливаю нужный день недели до 3 во вторник.
Однако при инициализации объекта NSDate и доступа к этому расширенному свойству «вторник» я получаю дату за месяц.
(сегодняшняя дата - "26 августа 2015, 4:42 PM") (дата вторнику - "Sep 26, 2015, 4:42 PM")
Что является причиной этого продвижение через месяц? Есть ли способ вернуть конкретную дату каждой недели, через которую мы проходим, расширяя класс NSDate?
Благодаря
Именно то, что я ищу! Спасибо за четкую разбивку. –