在iPhone中一起创建日期和时间的选择器

时间:2012-11-25 12:22:29

标签: iphone ios uidatepicker

我正在使用UIDatePickerModeDateUIDatePickerModeTime为日期和时间创建两个选择器,但我想一起为日期和时间创建一个选择器。我是iOS开发的新手。

对于日期选择,我使用此代码:

datePick = [[UIDatePicker alloc]initWithFrame:CGRectMake(50, 290, 120, 0)];
datePick.datePickerMode =UIDatePickerModeDate

对于时间选择我使用:

timePick = [[UIDatePicker alloc]initWithFrame:CGRectMake(50, 200, 120, 0)];
timePick.datePickerMode =UIDatePickerModeTime;

现在我的问题是如何为时间和时间创建一个选择器?

3 个答案:

答案 0 :(得分:4)

您可以选择不为datePickerMode设置datePickUIDatePickerModeDateAndTime是默认值。它与:

相同
datePick.datePickerMode = UIDatePickerModeDateAndTime

答案 1 :(得分:0)

使用以下代码希望您的问题得到解决

        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];

通过添加此方法设置日期和时间Formate

- (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;
}

要从日期获取更新值,请使用此

 -(void)updateDateField:(id)sender
    {
        UIDatePicker *picker = (UIDatePicker*)self.dateTextField.inputView;
        self.dateTextField.text = [self formatDate:picker.date];
    }

答案 2 :(得分:-1)

我不太清楚你的问题,但如果你想用同一个选择器来选择日期和时间使用

_datePicker.datePickerMode = UIDatePickerModeDateAndTime;