[英]Programmatically launch UIWebView Keyboard
在这里使用Javascript n00b,之前曾有人问过这个问题,但没有给出直接答案。
加载视图时,我试图启动可编辑UIWebView的键盘。
到目前为止,我有以下代码
在index.html中:
<html>
<head>
<script Language="text/javascript">
function showKeyBoard(){
document.forms['myform'].elements['mytextfield'].focus();
}
</script>
</head>
<body OnLoad="document.myform.mytextfield.focus();">
<form name="myform">
<textarea type="text" name="mytextfield" cols="40">Tap here to enter text</textarea>
</form>
</body>
</html>
在我的视图控制器中,我有:
-(void)viewDidLoad
{
[super viewDidLoad];
[self.webView loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"index" ofType:@"html"]isDirectory:NO]]];
}
相同的视图控制器也是webView的委托,其代码如下:
-(void)webViewDidFinishLoad:(UIWebView *)aWebView
{
[aWebView stringByEvaluatingJavaScriptFromString:@"showKeyBoard()"];
}
我的Java脚本或iOS有什么问题吗?
对于我只包含它的应用程序,textarea并不是必需的,因为它具有可聚焦的表单元素。
我对可以在加载视图时启动UIWebView键盘的任何解决方案持开放态度。 数周以来,我一直在努力寻找解决方案,但我无处可寻。
编辑:当我使用网络浏览器打开index.html时,焦点起作用。
从iOS 6开始,您可以设置[aWebView setKeyboardDisplayRequiresUserAction:NO]。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.