Cocoa Touch - 如何将 UIDatePicker 中的值分配给 TableView 中的 TextField

发布于 2024-12-04 15:47:40 字数 242 浏览 1 评论 0原文

大家好,

我有一个固定行 tableView,其中有几个 TextFields 用于编辑目的。其中 2 个字段用于日期输入。当焦点位于两个字段时,我可以调出 datePicker,但如何将所选日期设置到相应的 TextField 中?

在我的 datePickerValueChanged 方法中,我如何知道当前正在使用 UIDatePicker 编辑哪个 TextField?

请帮忙。非常感谢!

:)

Hihi all,

I have a fixed row tableView with several TextFields in it for editing purposes. 2 of the fields are for date input. I can call out the datePicker when focus on the 2 fields, but how can I set the selected date into the correspondent TextField?

In my datePickerValueChanged method, how can I know which TextField is currently being edited with the UIDatePicker?

Please help. Great thanks in advance!

:)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

開玄 2024-12-11 15:47:40

您可以尝试以下操作:在 .h 文件中采用 UITextField *activeTextField 变量,现在

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField
{
     //Give reference of textField to active one
     activeTextField = textField;

     return YES;
}

您可以拥有活动文本字段。现在您可以在 datePickerValueChanged 方法中操作它

希望它对您有所帮助。

you can try this: in .h file take a variable of UITextField *activeTextField now in

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField
{
     //Give reference of textField to active one
     activeTextField = textField;

     return YES;
}

now you can have active text field. Now you can manipulate it in datePickerValueChanged method

Hope it helps you.

帅的被狗咬 2024-12-11 15:47:40

您可以将选择器添加到 UIDatePickers,因为它们将具有不同的实例变量。

[datePicker addTarget:self
            action:@selector(changeDateInLabel1:)
         forControlEvents:UIControlEventValueChanged];

[datePicker2 addTarget:self
                action:@selector(changeDateInLabel2:)
             forControlEvents:UIControlEventValueChanged];

然后在该方法中,您可以这样做:

    - (void)changeDateInLabel2:(id)sender{
        //Use NSDateFormatter to write out the date in a friendly format
        NSDateFormatter *_dateFormatter = [[NSDateFormatter alloc] init];
        _dateFormatter.dateStyle = NSDateFormatterMediumStyle;

//Or a text field
        label2.text = [NSString stringWithFormat:@"%@",
                     [_dateFormatter stringFromDate:datePicker2.date]];
        [_dateFormatter release];
    }   

对于文本字段,您可以使用 textFieldShouldBeginEditing 或 textFieldShouldBeginEditing 来检查您所在的位置。

You can add a selector to your UIDatePickers as they will have different instance variables.

[datePicker addTarget:self
            action:@selector(changeDateInLabel1:)
         forControlEvents:UIControlEventValueChanged];

[datePicker2 addTarget:self
                action:@selector(changeDateInLabel2:)
             forControlEvents:UIControlEventValueChanged];

Then in the method you can do like this :

    - (void)changeDateInLabel2:(id)sender{
        //Use NSDateFormatter to write out the date in a friendly format
        NSDateFormatter *_dateFormatter = [[NSDateFormatter alloc] init];
        _dateFormatter.dateStyle = NSDateFormatterMediumStyle;

//Or a text field
        label2.text = [NSString stringWithFormat:@"%@",
                     [_dateFormatter stringFromDate:datePicker2.date]];
        [_dateFormatter release];
    }   

For textField's you can use textFieldShouldBeginEditing or textFieldShouldBeginEditing to check which one you are on.

甜妞爱困 2024-12-11 15:47:40

将包含文本字段的单元格设置为选定状态。设置日期时,将其设置在所选单元格的文本字段中。

苹果更喜欢这样做。检查 日期单元格< /a> 代码示例。

set the cell which contains the text field as selected. while setting the date, set it in the text filed of the cell which is selected.

this is how Apple prefers doing it. check Date Cell code sample.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文