У меня есть NSDate, который я получаю от UIDatepicker.
IBOutlet UIDatePicker *dueDate; NSDate *selectedDate = [dueDate date];
Как мне извлечь месяц из dueDate в виде int? (1 за январь, 2 за февраль и т. Д.)
dueDate
int
NSCalendar *calendar = [NSCalendar currentCalendar]; NSDateComponents *components = [calendar components:NSMonthCalendarUnit fromDate:[dueDate date]]; NSInteger month = [components month];
используйте -[NSCalendar components:fromDate:], например, пример здесь:
-[NSCalendar components:fromDate:]
http://developer.apple.com/iphone/library/documentation/Cocoa/Reference/Foundation/Classes/NSCalendar_Class/Reference/NSCalendar.html
NSDateFormatter *dateFormat = [[[NSDateFormatter alloc] initWithDateFormat:@"%m" allowNaturalLanguage:NO] autorelease]; int month = [[dateFormat stringFromDate:dueDate] intValue];