在alerview被解雇后如何使webview成为第一响应者
Posted
技术标签:
【中文标题】在alerview被解雇后如何使webview成为第一响应者【英文标题】:How to make webview become firstresponder after alerview dismissed 【发布时间】:2015-09-17 07:47:30 【问题描述】:我有一个包含 webview 的视图控制器 A,A 在导航视图控制器的顶部。webview 用于加载网页,网页包含一个文本字段和一个按钮。
如果我单击按钮,则 UIAlertView 会显示在 APP 中。在我单击“确定”按钮(在 UIAlertView 中)以关闭警报视图后,我想在文本字段中输入,但我不能,因为文本字段无法变为可编辑。我点击它,它没有任何反应。这个时候我只能点击导航控制器的返回按钮。
我试过用:
[webView becomeFirstResponder];
这不起作用。
如果我使用:
[webView reload];
它有效。但我不想使用重新加载,因为它需要时间。
有什么建议吗?
非常感谢!
【问题讨论】:
【参考方案1】:你可以试试
-(void)setUpWebView
NSString* url = [NSString stringWithFormat:@“url"];
NSURL* nsUrl = [NSURL URLWithString:url];
NSURLRequest* request = [NSURLRequest requestWithURL:nsUrl cachePolicy:NSURLRequestReloadIgnoringLocalAndRemoteCacheData timeoutInterval:30];
[self.webView loadRequest:request];
-(void)showWebView
[self setUpWebView];
self.viewThisWebView.frame = CGRectMake(0, 0 , 320, 560);
self.viewThisWebView.alpha = 0;
[self.view addSubview: self.viewThisWebView];
[UIView animateWithDuration:0.4 animations:^
self.viewThisWebView.alpha = 1;
completion:^(BOOL finished)
];
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
if (buttonIndex == 1)
[self showWebView];
【讨论】:
以上是关于在alerview被解雇后如何使webview成为第一响应者的主要内容,如果未能解决你的问题,请参考以下文章
iOS Swift:如何创建像 UIAlertView 这样看似在解雇后自行消失的对象
Android Spinner在Espresso测试中点击后立即被解雇