我们更改datetime选择器中的值时更新文本字段

时间:2011-08-24 06:11:52

标签: iphone

我正在制作一个iPhone应用程序,其中我使用日期时间选择器并在文本字段中显示所选日期。现在我想更新文本字段,因为日期选择器中的选定日期发生了变化。

我能做到这一点吗?给我一些解决方案。

提前致谢。

3 个答案:

答案 0 :(得分:7)

只需添加目标和广告,即可通知UIDatePicker更改。控制事件UIControlEventValueChanged的操作。有关详细信息,请查看UIDatePicker参考。

一个简单的实现看起来像这样:

 [picker addTarget:self 
            action:@selector(datePickerValueChanged:)
  forControlEvents:UIControlEventValueChanged];

然后......

   - (void)datePickerValueChanged:(id)sender{
        UIDatePicker *picker = (UIDatePicker *)sender;
        NSString *dateString;

        dateString = [NSDateFormatter localizedStringFromDate:[picker date]
                                                    dateStyle:NSDateFormatterMediumStyle 
                                                    timeStyle:NSDateFormatterNoStyle];

        [textField setText:dateString];


}

答案 1 :(得分:1)

将此操作与datepicker valuechange方法相关联,因此当您更改日期时,它将显示在textField

-(IBAction)pkrValueChange:(UIDatePicker*)sender{

    textField.text = [[sender date] description];

}

答案 2 :(得分:0)

Swift 4.2 Xcode 10.1

datePicker.addTarget(self, action: #selector(datePickerValueChanged), for: .valueChanged)

@objc
private func datePickerValueChanged() {
    let dateFormatter = DateFormatter()
    dateFormatter.dateStyle = .medium
    dateFormatter.timeStyle = .short
    let dateString = dateFormatter.string(from: datePicker.date)
    yourTextField.text = "\(dateString)"
}