После нескольких часов работы с NSCalendar
, NSDate
и NSDateComponents
мне пришло в голову, что Apple не создала перечисление для будних дней.Перечисление отсутствует в Cocoa Touch Календарные классы?
По всей видимости, судя по рамке, весь мир использует семидневный подход к рабочим дням недели. И эти недели имеют имена, которые являются универсальными по смыслу, т.е. переведенное воскресенье на, например, венгерское - это другое слово (Vasarnap), но это СРЕДСТВО В воскресенье. Я говорю на венгерском + 4 других языках, кроме английского, так что я точно знаю.
Если мы извлекаем NSCalendarUnitWeekDay
компонент, можно быстро узнать, что она возвращает NSInteger
и воскресенье представлено 1, понедельник 2, и т.д ..
Это очень легко расширить NSCalendar
обеспечить такое перечисление и я уже делал это на самом деле и до сих пор оказывается практичным. Но мне интересно, может быть, я что-то упустил, и есть причина для исключения такого перечисления.
Есть ли?
Почему необходимо перечисление? Каковы различия в первый день недели? Как насчет календарей, таких как еврейский календарь, где начинается день на закате? Концептуально, календарь не должен иметь 7-дневных недель. Я думал о создании 14-дневного недельного календаря с целью установки двухнедельных напоминаний. Просто некоторые мысли .... –
Потому что, когда вы проверяете свойство NSDateComponents.weekday, оно возвращает целое число, и вы не знаете, что означает это число. То же самое касается свойства firstDayOfTheWeek. –