繁体   English   中英

以编程方式启动UIWebView键盘

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM