当编辑完成时,如何在popupdateselect器时popup文本点击消失

我有像下面这样的东西

在这里输入图像说明 dateselect器视图总是在那里我怎样才能让它出现popup时inputdate点击,当我点击回地面dateselect器应该下去

我刚才做dateselect器视图的习惯,但我不知道如何做到这一点出现和消失的事情

好。 这里是一些示例代码,您的animation要求。

- (void) showView { [self.view addSubview:yourDatePickerView]; yourDatePickerView.frame = CGRectMake(0, -250, 320, 50); [UIView animateWithDuration:1.0 animations:^{ yourDatePickerView.frame = CGRectMake(0, 152, 320, 260); }]; } 

这里是如何隐藏你的DatePickerView

 - (void) hideView { [UIView animateWithDuration:0.5 animations:^{ yourDatePickerView.frame = CGRectMake(0, -250, 320, 50); } completion:^(BOOL finished) { [yourDatePickerView removeFromSuperview]; }]; } - (BOOL)textFieldShouldBeginEditing:(UITextField *)textField { if(textField == yourDateTextField) { [self showView]; return NO; // preventing keyboard from showing } return YES; } - (void)textFieldDidEndEditing:(UITextField *)textField { if(textField == yourDateTextField) { [self hideView]; } } 

这就是你所需要的。

您应该在委托方法中标识文本字段。

 - (BOOL)textFieldShouldBeginEditing:(UITextField *)textField { if(textField == DATE_TEXT_FIELD) { //Display date picker } } - (void)textFieldDidEndEditing:(UITextField *)textField { if(textField == DATE_TEXT_FIELD) { //Hide date picker } } 
  • 创build一个包含这个dateselect器视图的UIView引用。
  • 现在将这个datePickerContainerView分配给textField.inputView属性。
  • 然后将textfield.delegate分配给self并实现您的textFieldShouldReturn方法。 在这种方法中,写下这行

    [textField resignFirstResponder];

    返回YES;

现在,当你点击该文本框,它将加载dateselect器视图来代替默认的键盘,按照inputview属性设置。

在执行datePicker的代码之前,请确保您键入下面的代码行

  [textField resignFirstResponder]; 

正如我们所知,键盘是textField的默认第一响应者。所以你应该先辞职,然后代码select器,否则键盘也会popup。