我的UIWebView加载可用内容的html内容。我想让UIWebView专注并在UIWebView中显示键盘。我使用[self.webview becomeFirstResponder]
,但它不起作用。有什么方法可以解决吗?以可编程方式显示可编辑UIWebView中的键盘
谢谢。
我的UIWebView加载可用内容的html内容。我想让UIWebView专注并在UIWebView中显示键盘。我使用[self.webview becomeFirstResponder]
,但它不起作用。有什么方法可以解决吗?以可编程方式显示可编辑UIWebView中的键盘
谢谢。
UIwebview不可编辑,您无法使其成为第一响应者。 在哪里,你可以使用JavaScript的用于这一目的,试试这个答案
UIWebView with contentEditable (html editing), first responder handling?
需要设置为“可见在启动”复选框,在你的窗口对象 - 键盘机器会自动显示在输入字段
在iOS 6中,您需要1)将您的webview设置为keyboardDisplayRequiresUserAction = NO,以及2)调用焦点。代码如下:
self.webView.keyboardDisplayRequiresUserAction = NO; // put in viewDidLoad
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
[self.webView
stringByEvaluatingJavaScriptFromString:@"document.getElementsByTagName('body')[0].focus()"];
return YES;
}
您可以使用document.getElementById('someId')。focus()作为替代。我将textField设置为委托,并使用委托方法textFieldShouldReturn,当按下返回键时触发。
谢谢,我已经将html内容设置为使用javascript编辑。但我不能让UIWebView聚焦。你提供的链接没有答案成为UIWebView中的第一个响应者。你可以给我一些关于这个的示例代码吗? – tangqiaoboy 2012-03-23 09:03:27
jScriptString = [NSString stringWithFormat:@“var field = document.activeElement;” “field.value ='%@';”,symbol.data]; [myWebView stringByEvaluatingJavaScriptFromString:jScriptString]; jScriptString = [NSString stringWithFormat:@“document.activeElement.form.submit();”]; [myWebView stringByEvaluatingJavaScriptFromString:jScriptString]; – 2012-03-23 10:04:11