iOS键盘并没有被淘汰

iOS键盘并没有被淘汰,ios,uitextfield,resignfirstresponder,Ios,Uitextfield,Resignfirstresponder,我有3个文本字段 前两个允许使用标准键盘输入,最后一个文本字段显示选择器 我在关闭键盘时遇到了一些问题-因此,当单击3文本字段时,会出现选择器,但是屏幕上会保留以前文本字段中的键盘 我的每个文本字段都有一个标记,我使用以下代码: -(void)textFieldDidBeginEditing:(UITextField *)textField { //Keyboard becomes visible if (textField.tag == 1) { [_textFiel

我有3个文本字段

前两个允许使用标准键盘输入,最后一个文本字段显示选择器

我在关闭键盘时遇到了一些问题-因此,当单击3文本字段时,会出现选择器,但是屏幕上会保留以前文本字段中的键盘

我的每个文本字段都有一个标记,我使用以下代码:

-(void)textFieldDidBeginEditing:(UITextField *)textField { //Keyboard becomes visible

    if (textField.tag == 1) {
        [_textField2 resignFirstResponder];
        _myPicker.hidden = true;
    }

    if (textField.tag == 2) {
        [_textField1 resignFirstResponder];
        _myPicker.hidden = true;
    }

    if (textField.tag == 3) {
        [_textField1 resignFirstResponder];
        [_textField1 resignFirstResponder];
    }

}

有关如何修复此问题的任何想法?

请确保将textfield的委托设置为此代码所在的类

这可以在Interface Builder中完成,也可以使用:

[_textField1 setDelegate:self];
[_textField2 setDelegate:self]; 
在viewDidLoad中


还要确保类符合UITextFieldDelegate协议,您必须为文本字段设置委托。您必须使用和self.\u textField1.delegate=self

我从文本字段拖到IB中的文件所有者-我想这是一样的?我还需要指定吗?嗨,我已将该委托设置为ok。我能够进入textFieldDidBeginEditing方法,但是其中一个文本字段的键盘一直出现在我的选择器顶部。我不明白为什么