0

2つのtextFieldがあり、デフォルトのタップ動作をキーボードからDatePickerに置き換えました

-(void)updateTextField:(id)sender
{
    UIDatePicker *picker = (UIDatePicker*)_editStartDate.inputView;
    _editStartDate.text = [NSString stringWithFormat:@"%@",picker.date];
}


- (void)viewDidLoad
{
   UIDatePicker *datePicker = [[UIDatePicker alloc]init];

    [datePicker setDate:[NSDate date];
    [datePicker addTarget:self action:@selector(updateTextField:) forControlEvents:UIControlEventValueChanged];       
    [_editStartDate setInputView:datePicker];
...
}

このコードは、キーボードの代わりにdatepickerを作成し、editStartDateという名前のtextFieldを更新しますが、editEndDateという名前の2番目のtextFieldがあり、その値を取得する方法もわかりません。

あなたはなにか考えはありますか ?

4

1 に答える 1

1

これを試してください:

-(void)updateTextField:(id)sender
{

    if([_editStartDate isFirstResponder]){
        UIDatePicker *picker = (UIDatePicker*)_editStartDate.inputView;
        _editStartDate.text = [NSString stringWithFormat:@"%@",picker.date];
    }
    if([_editEndDate isFirstResponder]){
        UIDatePicker *picker = (UIDatePicker*)_editEndDate.inputView;
        _editEndDate.text = [NSString stringWithFormat:@"%@",picker.date];
    }

}
于 2013-01-28T10:15:07.400 に答える