Xcode - 如何循环UIAlert(带文本字段)直到输入正确的值?

时间:2012-02-23 02:05:54

标签: iphone objective-c ios xcode uialertview

我目前正在iOS应用程序上使用Xcode ...

我已经设置了一个UIAlertView(带有问题作为信息),弹出一个文本字段来检索响应。

所需的功能是在文本字段中输入不正确的值后,UIAlert将循环...直到输入正确的响应。此时,UIAlert将被解雇。

我已经进行了广泛的谷歌搜索,无法提出解决方案......任何回复都将非常感谢!

1 个答案:

答案 0 :(得分:1)

将您的类设置为UITextFieldDelegate,并假设您有一个名为alertView的UIAlertView属性:

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
    NSString *textFieldString = textField.text;
    if ([textFieldString isEqualToString:@"something"])
    {
        [self.alertView dismissWithClickedButtonIndex:-1 animated:YES];
    }
}

如果您想要更精细的匹配,请使用NSRegularExpression或NSRange,如果您正在寻找子字符串:

NSRange result = [textFieldString rangeOfString:searchText options:(NSCaseInsensitiveSearch|NSDiacriticInsensitiveSearch)];
if (result.location != NSNotFound)
{
   // dismiss
}