2016-09-01 106 views
-3

enter image description here如何在日期選擇器中顯示文本字段中的日期?

點擊後...日期不顯示在文本框中。 Textfield位於tableview的自定義單元格中。

enter image description here

+0

當您完成後,從pickerView獲取日期並使用NSDateFormatter將其格式化爲文本。將結果文本放在textField中。 – Brandon

+0

這個問題有太多的錯誤。在問這個問題之前,你甚至懶得去做初步的研究。你還沒有嘗試過任何東西。你甚至不屑於提及你正在使用哪種語言。這是一個基本的問題,已被回答數萬億次,去谷歌它 – NSNoob

+0

可能重複的[UITextField觸摸iPhone顯示日期選擇器](http://stackoverflow.com/questions/11197855/iphone-display-date-picker- on-uitextfield-touch) –

回答

0
UIDatePicker *datePicker = [[UIDatePicker alloc]init]; 
[datePicker setDate:[NSDate date]]; 
datePicker.datePickerMode = UIDatePickerModeDate; 
[datePicker addTarget:self action:@selector(dateTextField:) forControlEvents:UIControlEventValueChanged]; 
[txtField_date setInputView:datePicker]; 

-(void) dateTextField:(id)sender 
{ 
UIDatePicker *picker = (UIDatePicker*)txtField_date.inputView; 
[picker setMaximumDate:[NSDate date]]; 
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; 
NSDate *eventDate = picker.date; 
[dateFormat setDateFormat:@"dd/MM/yyyy"]; 
NSString *dateString = [dateFormat stringFromDate:eventDate]; 
txtField_date.text = [NSString stringWithFormat:@"%@",dateString]; 
} 

試試這個代碼。

+0

你在哪裏得到'txtFieldBranchYear.inputView'? – NSNoob

+1

另外,你爲什麼要設置'[picker setMaximumDate:[NSDate date]];'在ValueChangedEvent中?如果您未設置日期選擇器的最大日期,則應該在顯示DatePicker之前將其設置爲 – NSNoob

+0

,只需忘記此行並使用此代碼即可。 –

-1

您可以使用日期屬性上UIDatePicker並將其轉換爲NSString,並將其設置爲您UITextField

NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; 
[formatter setDateFormat:@"yyyy"]; // set your own format 
NSString *formattedDateString = [formatter stringFromDate:yourPicker.date]; 
textField.text = formattedDateString; 
相關問題