objective-c – 使用NSDateComponents获取一周的第一天:改变年份

objective-c – 使用NSDateComponents获取一周的第一天:改变年份,第1张

概述你好 我有一个设置firstWeekDay的问题,这里是我做的: NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar]; comp = [gregorian components:(NSYearCalendarUnit | NSMonthCalendarUnit | 你好
我有一个设置firstWeekDay的问题,这里是我做的:

NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIDentifIEr:NSGregorianCalendar]; comp = [gregorian components:(NSYearCalendarUnit | NSMonthCalendarUnit | NSWeekCalendarUnit | NSWeekdayCalendarUnit) fromDate:targetDate];[comp setWeekday:2];NSDate *firstWeekDay = [gregorian dateFromComponents:comp];

如果2011-01-01星期六是targetDate,我的日历中的第一个WeeDayDay似乎是2011-12-26星期一,但实际上应该是2010-12-26星期一.我该怎么做才是正确的?

解决方法 要解决此问题,请在NSDateComponents中添加NSYearForWeekOfYearCalendarUnit.

例如:

NSCalendar* calendar = [NSCalendar currentCalendar];NSDateComponents* comps = [calendar components:NSYearForWeekOfYearCalendarUnit |NSYearCalendarUnit|NSMonthCalendarUnit|NSWeekCalendarUnit|NSWeekdayCalendarUnit fromDate:curDate];[comps setWeekday:2]; // 2: mondayfirstDayOfTheWeek = [calendar dateFromComponents:comps];[comps setWeekday:7]; // 7: saturdaylastDayOfTheWeek = [calendar dateFromComponents:comps];
总结

以上是内存溢出为你收集整理的objective-c – 使用NSDateComponents获取一周的第一天:改变年份全部内容,希望文章能够帮你解决objective-c – 使用NSDateComponents获取一周的第一天:改变年份所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1028064.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存