问题
I am creating two pickers for date and time using UIDatePickerModeDate
and UIDatePickerModeTime
, but I want to create one picker for date and time together. I am new to iOS development.
For date selection I use this code:
datePick = [[UIDatePicker alloc]initWithFrame:CGRectMake(50, 290, 120, 0)];
datePick.datePickerMode =UIDatePickerModeDate
For time selection I use this:
timePick = [[UIDatePicker alloc]initWithFrame:CGRectMake(50, 200, 120, 0)];
timePick.datePickerMode =UIDatePickerModeTime;
Now my question is how can I create one picker for both and time?
回答1:
You can choose not to set datePickerMode
for your datePick
. The UIDatePickerModeDateAndTime
is the default. It's the same as:
datePick.datePickerMode = UIDatePickerModeDateAndTime
回答2:
Use the Following Code hope your problem will be resolve
UIDatePicker *datePicker = [[UIDatePicker alloc]init];
datePicker.datePickerMode = UIDatePickerModeDateAndTime;
[datePicker setDate:[NSDate date]];
[datePicker addTarget:self action:@selector(updateDateField:) forControlEvents:UIControlEventValueChanged];
self.dateOfBirth.inputView = datePicker;
self.dateOfBirth.text = [self formatDate:datePicker.date];
Set Date and Time Formate by adding this method
- (NSString )formatDate:(NSDate )date
{
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateStyle:NSDateFormatterShortStyle];
[dateFormatter setDateFormat:@"dd-MM-yyyy hh:mm a"];
NSString *formattedDate = [dateFormatter stringFromDate:date];
return formattedDate;
}
To get updated value from date use this
-(void)updateDateField:(id)sender
{
UIDatePicker *picker = (UIDatePicker*)self.dateTextField.inputView;
self.dateTextField.text = [self formatDate:picker.date];
}
回答3:
I didn't understood very well your question, but if you want with the same picker to pick both date and time use
_datePicker.datePickerMode = UIDatePickerModeDateAndTime;
来源:https://stackoverflow.com/questions/13550958/create-picker-for-date-and-time-together-in-iphone