3

我正在使用UIDatePickerModeDateand创建两个日期和时间UIDatePickerModeTime选择器,但我想一起创建一个日期和时间选择器。我是 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;

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

4

3 回答 3

4

您可以选择不datePickerMode为您的datePick. 是UIDatePickerModeDateAndTime默认值。它与以下内容相同:

datePick.datePickerMode = UIDatePickerModeDateAndTime
于 2012-11-25T12:56:06.550 回答
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];

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

- (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];
    }
于 2017-02-08T09:15:19.143 回答
-1

我不太了解您的问题,但是如果您想使用相同的选择器来选择日期和时间,请使用

_datePicker.datePickerMode = UIDatePickerModeDateAndTime;
于 2012-11-25T12:25:18.577 回答