سؤال

كيف يمكنني الحصول على العدد الحالي للأيام في الشهر الحالي باستخدام NSDate أو شيء مشابه في Touch Cocoa؟

هل كانت مفيدة؟

المحلول

يمكنك استعمال ال 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 هو NSDate كائن يمثل التاريخ الحالي؛ يمكن استخدام هذا لعمل عدد الأيام في الشهر الحالي. أ NSCalendar ثم يتم إنشاء مثيل، مما يمكن استخدامه، بالتزامن مع NSDate للتاريخ الحالي، لإرجاع عدد الأيام في الشهر الحالي باستخدام rangeOfUnit:inUnit:forDate: وظيفة.

days.length سوف تحتوي على عدد الأيام في الشهر الحالي.

فيما يلي الروابط إلى مستندات NSDate و NSCalendar إذا كنت تريد المزيد من المعلومات.

نصائح أخرى

بناء الجملة السريع:

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

-[NSCalendar rangeOfUnit:inUnit:forDate:]

لقد تغيرت SWIFT 3 Syntax قليلا من إجابة Erez:

let cal = Calendar(identifier: .gregorian)
let monthRange = cal.range(of: .day, in: .month, for: Date())!
let daysInMonth = monthRange.count
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top