Objective C: Какой формат использовать при объявлении сообщения NSString, включающего объект NSDate?

#objective-c #datetime #date #nsstring #datepicker

#objective-c #datetime #Дата #nsstring #datepicker

Вопрос:

Я включил средство выбора даты в свое приложение и пытаюсь отправить сообщение «Вы выбрали дату и время XXX» после нажатия на кнопку. Как мне инициализировать мое сообщение, чтобы даты отображались правильно? Мой фрагмент кода, как показано ниже:

 NSDate *selected = [datePicker date]; 
NSString *message = [[NSString alloc] initWithFormat:@"The date and time you selected is: %@", selected];

UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Date and Time Selected"
                                                message:message delegate:nil
                                      cancelButtonTitle:@"Yes, I did."
                                      otherButtonTitles:nil]; [alert show];

[alert release]; 
[message release];
  

В моем предупреждающем сообщении теперь отображается мой ‘null’ вместо требуемых точных даты и времени. Можете ли вы посоветовать, что требуется, прежде чем оповещение сможет корректно отображать дату и время?

Большое спасибо

Zhen Hoe

Ответ №1:

Используйте NSDateFormatter для получения строкового представления вашей даты.

 NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateStyle:NSDateFormatterMediumStyle]; // Modify this to your liking
NSString *dateString = [formatter stringFromDate:date];
[formatter release];