gpt4 book ai didi

ios - 为什么 UIDatePicker 值为空?

转载 作者:行者123 更新时间:2023-11-29 03:13:31 25 4
gpt4 key购买 nike

我有这段代码,它在点击 UITextField (dateDue) 时添加一个 UIDatepicker (datePicker):

在 viewDidLoad 中:

// Initiate datepicker and assign to due date
UIDatePicker *datePicker = [[UIDatePicker alloc] init];
[datePicker addTarget:self action:@selector(dateChanged:)
forControlEvents:UIControlEventValueChanged];
_dueDate.inputView = datePicker;

效果很好,但我似乎无法在 changedDate 函数中获取日期值,它一直返回 null:

- (void) dateChanged:(id)sender{
// Add the date to the dueDate text field
NSLog(@"Date changed: %@", datePicker.date);
}

有人知道为什么会这样吗?

彼得

最佳答案

在您的 dateChanged: 方法中,您正在访问一个名为 datePicker 的变量。这是实例变量吗?

假设它是,你永远不会设置它。在您的 viewDidLoad 中,您使用了一个名为 datePicker 的局部变量,但它与具有相同名称的实例变量不同。

viewDidLoad 中,更改:

UIDatePicker *datePicker = [[UIDatePicker alloc] init];

到:

datePicker = [[UIDatePicker alloc] init];

这将解决它。

您还应该将 dateChanged: 方法更改为:

- (void) dateChanged:(UIDatePicker *)picker {
// Add the date to the dueDate text field
NSLog(@"Date changed: %@", picker.date);
}

关于ios - 为什么 UIDatePicker 值为空?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21957129/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com