在我的iOS应用程序中,我有一个带有文本字段的UIWebView。我想回应正在点击的返回键。我怎么做?如何处理iOS网页视图本机键盘上的返回键?
我可以以某种方式获得进入的UITextField这样我就可以实现UITextFieldDelegate方法textFieldShouldReturn?或者有其他方法可以实现这一目标吗?
在我的iOS应用程序中,我有一个带有文本字段的UIWebView。我想回应正在点击的返回键。我怎么做?如何处理iOS网页视图本机键盘上的返回键?
我可以以某种方式获得进入的UITextField这样我就可以实现UITextFieldDelegate方法textFieldShouldReturn?或者有其他方法可以实现这一目标吗?
您需要为此做一些JavaScript技巧。
在HTML文件中,绑定一个keyup事件回调的文本输入控件,(我最后一次检查,莫名其妙的UIWebView没有为返回键触发按键事件,所以keyup事件是您的最佳选择)
在这个回调中,让web视图获得一个自定义的URL方案。 e.g如下:
var input = document.getElementById('textInput');
input.onkeyup = function(){window.location = 'callback://keyup'};
然后你就可以在你处理这个URL方案的UIWebView的委托
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
if ([request.URL.scheme isEqualToString:@"callback"]) {
// Do what you want
return NO;
}
return YES;
}
uiwebview无法使用uitextfieldDelegate。尝试读取文件苹果
感谢响应。我意识到我不能使用UITextFieldDelegate,这就是为什么我在这里问这个问题:当从webview嵌入文本字段触发键盘时,如何获得UITextFieldDelegate类的返回键响应能力。 – Silromen
谢谢,这基本上是我决定的策略。 – Silromen