在我的popover被解雇后使用textFieldShouldEndEditing时出现问题

时间:2013-08-22 14:13:55

标签: ios uitextfield

我正在提出一个有字段的popover。我正在使用“textFieldShouldEndEditing”来对文本进行一些验证。如果输入的文本无效,我返回“NO”。

解雇我的popover时的问题。如果文本无效,textFieldShouldEndEditing将返回“NO”。在我关闭弹出窗口并单击任何其他文本字段后,该字段不会被选中。我无法输入任何其他字段,键盘也不显示。

避免这种行为的最佳方法是什么?

1 个答案:

答案 0 :(得分:0)

我不完全确定你想要达到的目标,但是我想你可以在你解雇弹出窗口时进行一些检查。

-(void)dimissView
{
    //We already know we are going to dismiss the view right away, so we can set
    //[textField resignFirstResponder];, no matter if the text is valid or not

    if(textView.text is valid)//Create some condition
    {
        //tell the parentView that textField.text was valid
    }
    else
    {
        //Tell the parentView that textField.text was invalid   
    }

    [view dismissViewControllerAnimated:YES completion:nil];
}

如果你找到一种方法告诉popover的父级,textField是无效的,IE设置了bool textFieldTextWasValid = NO;,那么你可以轻松检查,并在你尝试时做出适当的行为在父级中选择另一个textView,或者不管你的情况如何。

请注意,这不是正常工作的代码,这只是一个想法,您需要了解它才能使其正常工作。