【问题标题】:How to get the order of each day in a week?如何获得一周中每一天的顺序?
【发布时间】:2015-08-14 15:48:12
【问题描述】:

我想知道是否有办法知道一周中的每一天是如何排序的?我知道在公历中,属性“工作日”表示 1-7,并且
星期日由 1 表示。但是当我将区域(设置->常规->语言和区域->区域)更改为俄罗斯时,Apple 的日历应用程序显示“M”作为一周的第一天,而美国显示“S” ' 作为一周的第一天。 我怎样才能以编程方式解决这个问题?任何想法,谢谢提前。

【问题讨论】:

  • firstWeekDayNSCalendar 的属性?
  • @Larme 非常感谢你,Larme。正是我需要的。

标签: ios calendar weekday


【解决方案1】:

您可以通过以下代码以编程方式设置星期几。

设置后获取一周的第一天

- (NSDate*)firstDayOfWeek
{
    NSCalendar* calender = [[NSCalendar currentCalendar] copy];
    [calender setFirstWeekday:2]; //Override locale to make week start on Monday
    NSDate* startOfTheWeek;
    NSTimeInterval interval;
    [calender rangeOfUnit:NSWeekCalendarUnit startDate:&startOfTheWeek interval:&interval forDate:self];
    return startOfTheWeek;
}

设置一周的第一天

    [[NSCalendar currentCalendar] setFirstWeekday:2]; //Override locale to make week start on Monday

【讨论】:

  • 感谢您的回复。 firstWeekday 是我正在寻找的。谢谢!
【解决方案2】:

NSCalendar 有一个名为 firstWeekday 的属性,它表示接收者第一个工作日的索引。

NSCalendar documentation

【讨论】:

  • 似乎每个人都知道这一点,我很跛脚。非常感谢您的帮助!
【解决方案3】:

试试这个

[[NSCalendar currentCalendar] firstWeekday]

【讨论】:

  • 我只是好奇我的回答早了而且是对的,为什么不接受我的回答?
  • 抱歉,里奥。我的错。我的设备是 iPhone 4s,您的答案未完全显示,我错过了“firstWeekday]”。我能做些什么来弥补它?
  • 好吧,不用了。没关系
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-07-10
  • 1970-01-01
  • 2012-12-01
  • 1970-01-01
  • 2022-01-10
  • 1970-01-01
  • 2011-03-20
相关资源
最近更新 更多