2012-06-26 217 views
2

Javascript n00b在這裏,這個問題已被問過,但沒有給出直接的答案。以編程方式啓動UIWebView鍵盤

我試圖在加載視圖時爲可編輯的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鍵盤啓動。我一直在努力想出一個解決方案几個星期,我已經沒有地方了。

編輯:焦點在我用web瀏覽器打開index.html時起作用。

回答

5

從iOS 6開始,您可以設置[aWebView setKeyboardDisplayRequiresUserAction:NO]。