如何让datePicker在textField上显示日期?

时间:2013-03-10 22:40:43

标签: ios date datepicker datefield

我在视图中有一个textField,下面是一个选择器。

当用户从datePicker中选择日期时,我需要textField来显示日期的确切值。

如何从dateField获取日期?

4 个答案:

答案 0 :(得分:4)

将DatePicker的value_changed事件设置为IBAction:

示例:

- (IBAction) dateChanged:(id)sender {
    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
    [dateFormatter setDateStyle:NSDateFormatterMediumStyle];
    self.currentTextField.text = [dateFormatter stringFromDate:[self.datePicker date]];
}

答案 1 :(得分:2)

您可以通过在连接检查器中将操作设置为UIDatePicker事件来更新Value Changed更改日期的方法,实现将值设置为textField的操作

- (IBAction)datePickerValueChanged:(id) sender{

    NSDateFormatter *df = [[NSDateFormatter alloc] init];
    df.dateStyle = NSDateFormatterMediumStyle;

    self.textfield.text = [NSString stringWithFormat:@"%@",[df stringFromDate:datePicker.date]];

}

或者您可以将选择器添加到UIDatePicker

[datePicker addTarget:self action:@selector(updateMyDate:) forControlEvents:UIControlEventEditingChanged];

答案 2 :(得分:1)

UIDatePicker具有date属性。您可以通过此媒体资源访问NSDate

然后,您可能需要使用NSDateFormatterNSString创建NSDate,并能够在UITextField中显示它。

以最直接的方式,您的代码应如下所示:

myTextField.text = [myDateFormatter stringFromDate:myDatePicker.date];

答案 3 :(得分:0)

    NSDateFormatter *df = [[NSDateFormatter alloc] init];
    df.dateFormat = "dd-MMMM-yyyy hh:mm a"

    //To show date in textfield     

    myTextField.text = [df stringFromDate:datePicker.date];

    //To show selected date on datepicker from textfield 

   datePicker.date = df.dateFromString(myTextField.text)