Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/118.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ipad UIWebView中的键盘在输入焦点上显示然后隐藏_Ipad_Ios_Uiwebview_Keyboard - Fatal编程技术网

Ipad UIWebView中的键盘在输入焦点上显示然后隐藏

Ipad UIWebView中的键盘在输入焦点上显示然后隐藏,ipad,ios,uiwebview,keyboard,Ipad,Ios,Uiwebview,Keyboard,我有一个页面正在加载到iPad上的UIWebView(占据100%的屏幕) 当我触摸一个文本字段时,页面会将文本字段定位到正确的位置,键盘开始弹出,但随后它会旋转并向下返回,并在输入字段上调用blur 当我在mobile Safari中尝试相同的页面时,键盘能够成功部署 我无法理解键盘成功显示和保持不动的规则是什么,以及为什么uiwebview与safari不同 我对这个问题的所有研究都没有得到任何答案。如果您的问题中没有任何代码,我推测只有在最后调用UIWebViewDelegate webV

我有一个页面正在加载到iPad上的UIWebView(占据100%的屏幕)

当我触摸一个文本字段时,页面会将文本字段定位到正确的位置,键盘开始弹出,但随后它会旋转并向下返回,并在输入字段上调用blur

当我在mobile Safari中尝试相同的页面时,键盘能够成功部署

我无法理解键盘成功显示和保持不动的规则是什么,以及为什么uiwebview与safari不同


我对这个问题的所有研究都没有得到任何答案。

如果您的问题中没有任何代码,我推测只有在最后调用
UIWebViewDelegate webViewDidFinishLoad:

要测试这一点,首先将您的
UIWebView.delegate
设置为拥有它的
UIViewController
(或拥有
UIWebView
的任何对象)。然后实现这些委托方法

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
    NSString *urlString = request.URL.absoluteString;
    NSLog(@"%@ with URL = %@", NSStringFromSelector(_cmd), urlString);

    return YES;
}

- (void)webViewDidFinishLoad:(UIWebView *)webView
{
    NSString *urlString = webView.request.URL.absoluteString;
    NSLog(@"%@ with URL = %@", NSStringFromSelector(_cmd), urlString);
}
运行应用程序并记下调用
webviewdiffinishload:
的次数。(如果您的网页包含多个框架或包含Google Analytics之类的内容,则会多次调用。)

尝试在最后一次调用“webViewDidFinishLoad:”后触摸HTML文本字段。键盘能正常使用吗?(我想是的)


如果这样做有效,下一步尝试在最后一次调用“webViewDidFinishLoad:”之前联系。键盘是否向上移动但又向下移动?

当键盘打开时,您是否正确处理视图大小调整?如果不是,这可能是导致意外行为的原因。如何正确调整视图的大小?我已经有了键盘事件的处理程序。我只是不知道键盘需要什么样的条件才能保持不动……听起来你在改变/放弃webView委托方法中的第一响应者。您能为这些代表显示代码吗?您在代码中看到“resignFirstResponder”吗@MihaiTimar已经说过了。您必须提供一些代码以获得更好的答案。这个问题是3年前提出的。但是,
UITextFieldDelegate
协议方法仍然允许我们自定义
UITextField
的行为。您是否正在使用
[textField resignFirstResponder]
?请分享你提到的模糊的代码或截图?这确实是正在发生的事情,但问题是如何解决这个问题。有什么想法吗?