我有一個應用程序有一個textField,當按下時,打開一個datePicker供用戶選擇日期,然後將此信息發送到標籤。我只需要獲取DATE值,但發送的字符串如下所示:Xcode - DatePicker:顯示一個標籤的唯一日期字符串
<UITextField: 0x7ff66e740bf0; frame = (16 12; 289 30); text = '08/03/2017'; opaque = NO; (...and so on...)
如何獲取ONLY DATE字符串?
我的代碼是:
- (void)viewDidLoad
{
datePicker=[[UIDatePicker alloc]init];
datePicker.datePickerMode=UIDatePickerModeDate;
[self.dia2 setInputView:datePicker];
UIToolbar *toolBar=[[UIToolbar alloc]initWithFrame:CGRectMake(0, 0, 320, 44)];
[toolBar setTintColor:[UIColor grayColor]];
UIBarButtonItem *doneBtn=[[UIBarButtonItem alloc]initWithTitle:@"Pronto" style:UIBarButtonItemStyleBordered target:self action:@selector(ShowSelectedDate)];
UIBarButtonItem *space=[[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil];
[toolBar setItems:[NSArray arrayWithObjects:space,doneBtn, nil]];
[self.dia2 setInputAccessoryView:toolBar];
}
-(void)ShowSelectedDate
{
NSDateFormatter *formatter=[[NSDateFormatter alloc]init];
[formatter setDateFormat:@"dd/MM/YYYY"];
self.dia2.text=[NSString stringWithFormat:@"%@",[formatter stringFromDate:datePicker.date]];
mostraData.text=[NSString stringWithFormat:@"%@", _dia2];
[self.dia2 resignFirstResponder];
}
您正在設置'self.dia2.text'的日期。但是,然後你將'UITextField'('_dia2')轉換爲一個字符串並將其分配給'mostraData.text'。爲什麼? – rmaddy
供參考 - 您的日期格式不正確。你想'@「dd/MM/yyyy」'。切勿使用「YYYY」。使用'yyyy'一年。 – rmaddy