Значение компонента UIDatePicker - PullRequest
0 голосов
/ 13 апреля 2010

У меня есть UIDatePicker, который показывает (например, апрель | 13 | 2010). Мне нужно получить значение каждого компонента и установить его как целое число, чтобы его можно было поместить в три отдельных ключа в Plist.

MyMonth  Number  04
MyDay    Number  13
MyYear   Number  2010

Я могу установить текстовую метку, используя:

NSDateFormatter *df = [[NSDateFormatter alloc] init];
df.dateStyle = NSDateFormatterMediumStyle;
dateLabel.text = [NSString stringWithFormat:@"%@",
                                           df stringFromDate:datePkr.date]];
[df release];

Но мне просто нужно преобразовать значение каждого компонента в целое число. Будет ли проще создать UIPickerView с массивом дат и сделать это таким образом?

Ответы [ 2 ]

2 голосов
/ 13 апреля 2010

Вы знаете, список может хранить NSDate.

Чтобы получить компонент из средства выбора даты, сгенерируйте объект NSDateComponents из календаря с помощью -components:fromDate::

NSDateComponents* comps = [datePkr.calendar components:(NSYearCalendarUnit | NSMonthCalendarUnit |  NSDayCalendarUnit)
                                              fromDate:datePkr.date];
int myYear = [comps year];
int myMonth = [comps month];
int myDay = [comps day];
1 голос
/ 13 апреля 2010

Забудьте о форматере и просто используйте NSDateComponents - онлайн-документы дают хороший пример получения целочисленных компонентов даты из NSDate.

...