ios8 UIAlertView becomeFirstResponder for Password UITextField 不起作用
Posted
技术标签:
【中文标题】ios8 UIAlertView becomeFirstResponder for Password UITextField 不起作用【英文标题】:ios8 UIAlertView becomeFirstResponder for Password UITextField not working 【发布时间】:2014-09-23 14:44:23 【问题描述】:这在 ios7 中运行良好。升级到 iOS8 后,它奇怪地不起作用了。
所以,如果用户之前已经登录过,用户名会被保存并且需要密码。很简单,我只是在 0 索引 UITextField
中输入用户名,并将光标设置在 UIAlertView
的 1 索引 UITextField
。
在我只需要将becomeFirstResponder
设置为UIAlertView
中的第一个索引UITextField
之前。奇怪的是,我实际上可以将文本设置为数字 1 索引UITextField
。所以我知道我仍然可以正确访问UITextField
。
非常简单的代码。
这是我的代码...
- (IBAction)actionTesting:(id)sender
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Login" message:@"" delegate:self cancelButtonTitle:@"Login" otherButtonTitles: nil];
alert.alertViewStyle = UIAlertViewStyleLoginAndPasswordInput;
alert.tag = 999;
UITextField *txtUserName = [alert textFieldAtIndex:0];
UITextField *txtPassword = [alert textFieldAtIndex:1];
txtUserName.text = @"";
txtPassword.text = @"";
[alert textFieldAtIndex:1].delegate = self;
[alert show];
-(void)didPresentAlertView:(UIAlertView *)alertView
UITextField *txtUserName = [alertView textFieldAtIndex:0];
UITextField *txtPassword = [alertView textFieldAtIndex:1];
txtUserName.text = @"username";
txtPassword.text = @"password";
[txtPassword becomeFirstResponder];
看起来我们有一个新的UIAlertController
可用。我只是希望让它工作,所以我现在不必对我的原始代码做任何更改。
【问题讨论】:
UIAlertView's textfield does not show keyboard in iOS8 的可能重复项 你是在模拟器上运行这段代码吗? 【参考方案1】:Apple 似乎纠正了这个问题。前几天我才注意到该功能正在运行
【讨论】:
uialertview 现在不推荐使用 使用 uialertcontroller以上是关于ios8 UIAlertView becomeFirstResponder for Password UITextField 不起作用的主要内容,如果未能解决你的问题,请参考以下文章
仅在 iOS8 中,当 App 被锁定为纵向时,UIAlertView 更改为横向
当 SDK 目标为 iOS7 时,UIAlertView 太记账,无法在 iOS8 中替换
ios8 UIAlertView becomeFirstResponder for Password UITextField 不起作用
iOS 8 之后,还能继续使用 UIActionSheet 和 UIAlertView 吗?
如何在 iOS 8 中使用 UIAlertView? [复制]
iPhone iOS8:从 iOS7.1 sdk 构建并在 8.0 及更高版本的设备上运行时,UIAlertView 倒置旋转无法正常工作