对两个TextField使用相同的UIDatePicker

ich*_*duu 4 xcode objective-c uidatepicker uitextfield ios

我感到有两个文本框,没有fromdate和todate.how从同一datepicker.i得到不同的日期,尝试一些东西,最终在得到相同的日期在两个文本框时更改日期.

-(IBAction)dateValueChanged:(id)sender
{
        UIDatePicker *picker = (UIDatePicker *)sender;
        NSDate *dateSelected1 = [picker date];
        NSDate *dateSelected2 = [picker date];

        NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
        [dateFormatter setDateFormat:@"dd-MM-yyyy"];
        self.fromTextField.text = [dateFormatter stringFromDate:dateSelected1];
       self.toTextField.text = [dateFormatter stringFromDate:dateSelected2];
}
Run Code Online (Sandbox Code Playgroud)

acc*_*ews 7

一种更优雅的方式可以实现这个没有UITextFieldDelegatetextFieldDidBeginEditing:

只是检查 firstResponder

- (IBAction)dateValueChanged:(id)sender
{
    NSDate *dateSelected = [picker date];
    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
    [dateFormatter setDateFormat:@"dd-MM-yyyy"];

    if ([firstTextField isFirstResponder])
    {
      firstTextField.text = [dateFormatter stringFromDate:dateSelected];
    }
    else if ([self.endTextField isFirstResponder])
    {
        secondTextField.text = [dateFormatter stringFromDate:dateSelected];
    }
}
Run Code Online (Sandbox Code Playgroud)