2009-07-24 5 views

답변

159

당신은 NSDateNSCalendar 클래스를 사용할 수 있습니다

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는 현재 날짜를 나타내는 NSDate 객체입니다; 현재 달의 일수를 계산하는 데 사용할 수 있습니다. NSCalendar 개체가 인스턴스화되어 NSDate과 함께 현재 날짜에 rangeOfUnit:inUnit:forDate: 함수를 사용하여 현재 달의 일 수를 반환 할 수 있습니다.

days.length에는 당월의 일 수가 포함됩니다.

자세한 내용은 NSDateNSCalendar에 대한 문서 링크가 있습니다.

+0

보인다. 감사합니다 :) –

+0

당신이 forDate : today를 의미한다고 생각합니다. –

+0

예, 죄송합니다. Xcode에서 테스트했을 때 '날짜'라고했습니다. –

4

-[NSCalendar rangeOfUnit:inUnit:forDate:]

9

스위프트 구문 :

let date = NSDate() 
let cal = NSCalendar(calendarIdentifier:NSCalendarIdentifierGregorian)! 
let days = cal.rangeOfUnit(.CalendarUnitDay, inUnit: .CalendarUnitMonth, forDate: date) 
0

스위프트 3 구문은 Erez의 대답에서 조금 변경되었습니다이 트릭을 할 것 같은

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