代码之家  ›  专栏  ›  技术社区  ›  Brock Woolf

使用iOS的当月天数?

  •  66
  • Brock Woolf  · 技术社区  · 17 年前

    如何使用nsdate或类似的可可触摸功能获取当前月份的天数?

    4 回复  |  直到 7 年前
        1
  •  161
  •   Alex Rozanski    17 年前

    你可以使用 NSDate NSCalendar 类别:

    NSDate *today = [NSDate date]; //Get a date object for today's date
    NSCalendar *c = [NSCalendar currentCalendar];
    NSRange days = [c rangeOfUnit:NSDayCalendarUnit 
                           inUnit:NSMonthCalendarUnit 
                          forDate:today];
    

    today 是一个 新西兰 表示当前日期的对象;这可用于计算当前月份的天数。安 NSCANDENAR 然后,对象被实例化,可以与 新西兰 对于当前日期,要返回当前月份的天数,请使用 rangeOfUnit:inUnit:forDate: 功能。

    days.length 将包含当前月份的天数。

    以下是到文档的链接 NSDate NSCalendar 如果你想要更多的信息。

        2
  •  11
  •   Erez Haim    11 年前

    SWIFT语法:

    let date = NSDate()
    let cal = NSCalendar(calendarIdentifier:NSCalendarIdentifierGregorian)!
    let days = cal.rangeOfUnit(.CalendarUnitDay, inUnit: .CalendarUnitMonth, forDate: date)
    
        3
  •  5
  •   Rob Napier    17 年前

    -[NSCalendar rangeOfUnit:inUnit:forDate:]

        4
  •  1
  •   Josh Sherick    9 年前

    Swift 3语法与Erez的答案有些不同:

    let cal = Calendar(identifier: .gregorian)
    let monthRange = cal.range(of: .day, in: .month, for: Date())!
    let daysInMonth = monthRange.count