在我的viewDidLoad
我有以下代码:
UIDatePicker* datePicker = [[UIDatePicker alloc] init];
datePicker.datePickerMode = UIDatePickerModeDate;
[datePicker addTarget:self action:@selector(datePickerChanged:) forControlEvents:UIControlEventValueChanged];
dateField1.inputView = datePicker;
dateField2.inputView = datePicker;
dateField3.inputView = datePicker;
dateField4.inputView = datePicker;
(dateField都是UITextField
s)
在我的-(void)datePickerChanged:(UIDatePicker*)datePicker
中
方法,我如何知道正在编辑哪个dateField,以便我可以填写选择的日期?
目前我正在为每个UITextField使用新的UIDatePicker,但我希望这种情况有更优雅的解决方案。
感谢任何帮助!
答案 0 :(得分:8)
if([textField1 isFirstResponder]) {
}
else if[textField2 isFirstResponder]){
}
...etc...
答案 1 :(得分:0)
您可以为dateFields设置不同的标记,并检查datePickerChanged:方法中更改了哪些字段。但要做到这一点,你应该将原始结果存储在另一个地方(例如在你的dateField标签将成为键的字典中)。我之前没有尝试过,但应该工作。