FacebookのGraph API OAuthインターフェイスにログインするためのUIWebViewを作成しました。これは素晴らしいですが、キーボードをポップアップするために最初の入力フィールドをタップする必要があります。理想的には、フォームが表示されるとすぐにキーボードが表示されます。だから私はwebViewDidFinishLoad:
UIWebViewDelegateメソッドからフォーカスを取得する最初のフォームフィールドを作成する方法を理解しようとしてきたので、同じよう:UIWebViewをフォーム入力にフォーカスしてキーボードを表示させるにはどうすればよいですか?
- (void)webViewDidFinishLoad:(UIWebView *)wv {
[webView stringByEvaluatingJavaScriptFromString:@"document.getElementsByName('email')[0].focus();"];
}
ああ、これは動作しません。不思議なことに、私はFirefox JavaScriptコンソールでそのJavaScriptを実行すると、電子メールフィールドにフォーカスを移します。しかし、Mac用のSafariで実行すると、iOSと同じように、何もしません。 FWIW alert(document.getElementsByName('email')[0])
は、HTMLInputElementを選択したことを示します。だから、なぜfocus()
はiOSやMac OS Xでも何もしないのですか?
で可能です。 http://stackoverflow.com/questions/4199225/how-to-get-mobile-browsers-webkit-in-ios-android-to-display-their-soft-keyboar – Soumya
ありがとう、それは役立ちます。あなたが答えとしてそれを置いたなら、私は正しい答えとしてそれをマークしていたでしょう。 :-) – theory