У меня есть приложение, в котором я запрашиваю день рождения пользователей с помощью UIDatePicker, а затем сохраняю его в стандартных стандартах по умолчанию. Когда приложение снова открывается, я снова получаю дату, а затем хочу установить UIDatePicker на эту дату, но он сбой и не принимает дату. Он хранится в формате «8 июня 2009 года».UIDatePicker и NSDate
Как это сделать? Это способ, которым я пытаюсь сейчас:
- (void)viewWillAppear:(BOOL)animated {
birthDate = [Preferences getBirthDate];
if (birthDate == nil) {
[datePicker setDate:[NSDate date] animated:NO];
}
}
Мои методы прив пользователей выглядеть в своем классе:
+ (NSDate *)getBirthDate {
// Geting via user defaults....
if ([[NSUserDefaults standardUserDefaults] objectForKey:@"DOB"])
return [[NSUserDefaults standardUserDefaults] objectForKey:@"DOB"];
else {
return nil;
}
}
+ (BOOL)setBirthDate:(NSDate *)bDate {
//Setting via user defaults
[[NSUserDefaults standardUserDefaults] setObject:bDate forKey:@"DOB"];
return [[NSUserDefaults standardUserDefaults] synchronize];
}
Спасибо заранее.
Спасибо! Я пытался использовать [datePicker setDate: birthDate], чтобы установить дату. Что делает этот метод, если он не устанавливает дату, что вы хотите? – Xcoder
[datePicker setDate: birthDate] - это то же самое, что и datePicker.date = birthDate. Основное различие заключается в том, что если birthDate не равен нулю в вашем коде, дата datePicker не устанавливается. –
Да, я знаю. Я прокомментировал это, потому что [datePicker setDate: birthDate] рушился. Однако, по какой-то причине datePicker.date нет. Очень странно. – Xcoder