单击自定义 UIAlertView 按钮成为 FirstResponder

becomeFirstResponder on custom UIAlertView button click

我正在使用自定义 UIAlertView。当错误弹出时,我如愿以偿地 resignedFirstResponder。当用户单击由如下所示的 kButtonTitle 指定的完成按钮时,就会出现问题。一旦用户单击识别错误的按钮,我试图让键盘弹出。我尝试过:

if (alert)
    [textField resignFirstResponder];
else
    [_nameTextField becomeFirstResponder];
  }

以上似乎没有任何改变。下面粘贴了我的 textFieldShouldReturn 方法的全部代码:

- (BOOL)textFieldShouldReturn:(UITextField *)textField {

NSString *name = _nameTextField.text;


if ((name.length > 6) && [name containsString:@" "])
{
    [textField resignFirstResponder];

} else {



    SCLAlertView *alert = [[SCLAlertView alloc] init];

    alert.backgroundType = Blur;

    NSString *kNoticeTitle = @"Error";

    [alert showNotice:self title:kNoticeTitle subTitle:@"Please input both your first and last name" closeButtonTitle:kButtonTitle duration:0.0f];

    if (alert)
        [textField resignFirstResponder];
    else
        [_nameTextField becomeFirstResponder];

    }

    return YES;
    }

非常感谢任何帮助或意见!提前致谢!

也许您可以使用带有自定义操作的按钮来代替默认的关闭按钮。

[textField resignFirstResponder];
SCLAlertView *alert = [[SCLAlertView alloc] init];

[alert addButton:kButtonTitle actionBlock:^{
   [_nameTextField becomeFirstResponder];
}];

[alert showNotice:self title:kNoticeTitle
         subTitle:@"Please input both your first and last name"
 closeButtonTitle:nil duration:0.0f];