我的UIWebView加載可用內容的html內容。我想讓UIWebView專注並在UIWebView中顯示鍵盤。我使用[self.webview becomeFirstResponder]
,但它不起作用。有什麼方法可以解決嗎?以可編程方式顯示可編輯UIWebView中的鍵盤
謝謝。
我的UIWebView加載可用內容的html內容。我想讓UIWebView專注並在UIWebView中顯示鍵盤。我使用[self.webview becomeFirstResponder]
,但它不起作用。有什麼方法可以解決嗎?以可編程方式顯示可編輯UIWebView中的鍵盤
謝謝。
UIwebview不可編輯,您無法使其成爲第一響應者。 在哪裏,你可以使用JavaScript的用於這一目的,試試這個答案
UIWebView with contentEditable (html editing), first responder handling?
需要設置爲「可見在啓動」複選框,在你的窗口對象 - 鍵盤機器會自動顯示在輸入字段
在iOS 6中,您需要1)將您的webview設置爲keyboardDisplayRequiresUserAction = 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')。focus()作爲替代。我將textField設置爲委託,並使用委託方法textFieldShouldReturn,當按下返回鍵時觸發。
謝謝,我已經將html內容設置爲使用javascript編輯。但我不能讓UIWebView聚焦。你提供的鏈接沒有答案成爲UIWebView中的第一個響應者。你可以給我一些關於這個的示例代碼嗎? – tangqiaoboy 2012-03-23 09:03:27
jScriptString = [NSString stringWithFormat:@「var field = document.activeElement;」 「field.value ='%@';」,symbol.data]; [myWebView stringByEvaluatingJavaScriptFromString:jScriptString]; jScriptString = [NSString stringWithFormat:@「document.activeElement.form.submit();」]; [myWebView stringByEvaluatingJavaScriptFromString:jScriptString]; – 2012-03-23 10:04:11