Вопрос

У меня есть NSDate, который я получаю от UIDatepicker.

IBOutlet UIDatePicker *dueDate;
NSDate *selectedDate = [dueDate date];

Как получить месяц из dueDate в форме int?(1 для января, 2 для февраля и т. д.)

Это было полезно?

Решение

NSCalendar *calendar = [NSCalendar currentCalendar];
NSDateComponents *components = [calendar components:NSMonthCalendarUnit fromDate:[dueDate date]];
NSInteger month = [components month];

Другие советы

использовать -[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];
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top