我正在构建教程计划应用程序,我需要能够计算下一个日期。具体来说,我需要根据当前日期计算一周的下周六或周二(取决于哪一个出现)。
今天是2013年7月15日星期一。下一个星期二是2013年7月16日。下一个星期六是2013年7月20日。因此我需要2013年7月16日星期二的日期。
任何人都可以告诉我如何解决这个问题吗?
谢谢!
答案 0 :(得分:2)
使用[NSCalendar currentCalendar]
从当前日期获取NSDateComponents,尤其是NSWeekdayCalendarUnit
和NSWeekOfYearCalendarUnit
。这些组件的成员weekday
的范围为1 — sunday
到7 — saturday
。如果是1
或2
,请创建包含工作日2
的新组件,如果是7
,请在weekOfYear
中添加一个,并将工作日设置为{{ 1}}。对于所有其他案例,请将2
设置为weekday
。
现在再次使用7
从组件创建一天。