Iphone 以编程方式在contenteditable UIWebView中显示键盘

Iphone 以编程方式在contenteditable UIWebView中显示键盘,iphone,ios,ipad,uiwebview,contenteditable,Iphone,Ios,Ipad,Uiwebview,Contenteditable,我的UIWebView加载可编辑的html内容。我想让UIWebView聚焦并在UIWebView中显示键盘 我使用[self.webview becomeFirstResponder],但它不起作用。有什么变通方法吗 谢谢。UIwebview不可编辑,您不能将其作为第一响应者。 如果您可以使用javascripts实现这一目的,请尝试这个答案 UIwebview不可编辑,您无法使其成为第一响应者。 如果您可以使用javascripts实现这一目的,请尝试这个答案 窗口对象中的“启动时需要设置可

我的UIWebView加载可编辑的html内容。我想让UIWebView聚焦并在UIWebView中显示键盘

我使用[self.webview becomeFirstResponder],但它不起作用。有什么变通方法吗


谢谢。

UIwebview不可编辑,您不能将其作为第一响应者。 如果您可以使用javascripts实现这一目的,请尝试这个答案


UIwebview不可编辑,您无法使其成为第一响应者。 如果您可以使用javascripts实现这一目的,请尝试这个答案


窗口对象中的“启动时需要设置可见”复选框-键盘将在输入字段上显示“自动”

窗口对象中的“启动时需要设置可见”复选框-键盘将在输入字段上显示“自动”

这在iOS 6中现在是可能的。请参见UIWebView中的布尔键盘DisplayRequiresSerAction。设置为“否”后,您可以使用焦点设置光标。

这在iOS 6中现在是可能的。请参见UIWebView中的布尔键盘DisplayRequiresSerAction。设置为否后,您可以使用焦点设置光标。

在iOS 6>中,您需要1将webview设置为KeyboardDisplayRequiresAction=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'。焦点作为替代。我已将textField设置为代理,并使用了代理方法textFieldShouldReturn,当按下返回键时将触发该方法。

在iOS 6>中,您需要1将webview设置为KeyboardDisplayRequiresAction=NO,2调用focus。代码如下:

self.webView.keyboardDisplayRequiresUserAction = NO; // put in viewDidLoad

- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
        [self.webView
         stringByEvaluatingJavaScriptFromString:@"document.getElementsByTagName('body')[0].focus()"];
    return YES;
}

您可以使用document.getElementById'someId'。焦点作为替代。我已将textField设置为委托,并使用委托方法textFieldShouldReturn,该方法在按下return键时触发。

谢谢,我已使用javascript将html内容设置为可编辑。但我不能让UIWebView聚焦。您提供的链接没有关于成为UIWebView中的第一响应者的答案。您能给我一些关于此的示例代码吗?JScript字符串=[NSString stringWithFormat:@var field=document.activeElement;field.value='%@',symbol.data];[myWebView stringByEvaluatingJavaScriptFromString:JScript字符串];JScript字符串=[NSString stringWithFormat:@document.activeElement.form.submit;];[myWebView stringByEvaluatingJavaScriptFromString:JScript字符串];谢谢,我已经使用javascript将html内容设置为可编辑。但我不能让UIWebView聚焦。您提供的链接没有关于成为UIWebView中的第一响应者的答案。您能给我一些关于此的示例代码吗?JScript字符串=[NSString stringWithFormat:@var field=document.activeElement;field.value='%@',symbol.data];[myWebView stringByEvaluatingJavaScriptFromString:JScript字符串];JScript字符串=[NSString stringWithFormat:@document.activeElement.form.submit;];[myWebView stringByEvaluatingJavaScriptFromString:JScript字符串];这会使它处于焦点,但实际上不会显示键盘。将其设置为“否”可以设置光标并在Javascript中显示光标。您可以设置。将焦点放在元素上,键盘将出现。但是,WkWebView不存在类似的选项。这会将其置于焦点位置,但实际上不会显示键盘。将其设置为“否”可以设置光标并在Javascript中显示光标。您可以设置。将焦点放在元素上,键盘将出现。但是,WkWebView不存在类似的选项。