【发布时间】:2015-04-29 00:44:02
【问题描述】:
在使用 NSCalendar、NSDate 和 NSDateComponents 几个小时后,我突然想到 Apple 没有为工作日创建枚举。
显然,从框架来看,全世界都在使用每周 7 天的方法来表示工作日。这些工作日的名称在含义上是通用的,例如,将星期日翻译成匈牙利语是一个不同的词( Vasarnap)但它意味着星期天。我会说匈牙利语 + 除了英语之外的其他 4 种语言,所以我肯定知道。
如果我们提取NSCalendarUnitWeekDay组件,我们可以很快发现它返回了NSInteger,并且星期日用1表示,星期一是2,等等。
扩展NSCalendar 来提供这样的枚举非常容易,而且我实际上已经这样做了,到目前为止它被证明是实用的。
但我想知道也许我遗漏了一些东西,并且有理由省略这样的枚举。
有吗?
【问题讨论】:
-
为什么需要枚举?一周的第一天有什么不同?像犹太历这样一天从日落开始的日历怎么样?从概念上讲,日历不需要有 7 天的周。我曾想过创建一个 14 天的周历来设置每两周一次的提醒。只是一些想法....
-
因为当您检查 NSDateComponents.weekday 属性时,它返回一个整数,而您不知道该数字的含义。 firstDayOfTheWeek 属性也是如此。
标签: ios objective-c cocoa-touch nscalendar