UIAlertView在iOS 8中的键盘上没有弹出文本字段



我有一个UIAlertView,里面有一个文本字段(UIAlertViewStyleLainTextInput),它会在iOS 7中自动弹出键盘。然而,当我升级到iOS 8时,键盘并没有自动弹出,相反,我必须点击文本字段才能弹出键盘。当我调用它时,有没有办法将自动键盘弹出窗口恢复到UIAlertView文本字段?

 UIAlertView * alert = [[UIAlertView alloc] initWithTitle:@"" message:@"The amount?" delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:@"Ok", nil];
    alert.alertViewStyle = UIAlertViewStylePlainTextInput;
    UITextField * alertTextField = [alert textFieldAtIndex:0];
    alertTextField.keyboardType = UIKeyboardTypeNumberPad;
    [alertTextField setTextAlignment:NSTextAlignmentCenter];
    [alert show];
    [alert release];

更新:[alertTextField becomeFirstResponder];不工作,也不工作

 [[alert textFieldAtIndex:0] setDelegate:self];
 [[alert textFieldAtIndex:0] becomeFirstResponder];

此外,文本视图中有一个文本字段闪烁的指示器,这是有问题的,因为在用户点击文本字段之前,没有真正的键盘会自动弹出。

我不得不在iOS模拟器硬件->键盘菜单选项中取消选择"连接硬件键盘",以便在iOS 8中运行。

如果在[alert show]之后添加此行,则会弹出键盘。

[alertTextField becomeFirstResponder];

希望这能帮助

最新更新