2010-05-16 17 views
10

Bu hesaplamayı yapmak için ay ve artık yıl hesaplamak yerine. Bunu yapmak için bazı Apple Dahili API'lerini kullanmayı kontrol etmenin herhangi bir yolu var mı?Hedef C kullanarak ayda kaç gün bulmanın bir yolu?

calendar.getActualMaximum(calendar.DAY_OF_MONTH) 

Amaç C benzer herhangi bir şey var mı:

Java böyle bir şey var olduğu tespit? o zaman

cevap

53

NSCalendar ve rangeOfUnit:inUnit:forDate yöntemini kullanabilirsiniz. Örneğin, geçerli aydaki gün sayısını almak için:

NSCalendar *calendar = [NSCalendar currentCalendar]; 
NSRange range = [calendar rangeOfUnit:NSDayCalendarUnit inUnit:NSMonthCalendarUnit forDate:[NSDate date]]; 
NSUInteger numberOfDaysInMonth = range.length; 
+4

Şubat için test: 'rng.length' artık yıllarda 29 olan ve olmayan artık yıllarda 28 (beklendiği gibi ama zarar vermez kontrol etmek için) – Clafou

+3

Sadece "NSDayCalendarUnit" ve "NSMonthCalendarUnit" bilgisi için "NSCalendarUnitDay" ve "NSCalendarUnitMonth", ** iOS 8 ** ve üstü içindir. – TheTiger

İlgili konular