0

UIWebView用来显示格式化的内容。但是,我需要UITextViews/UITextFields用我们自己的替换默认键盘。

我可以使用怪诞的方法在默认键盘出现时隐藏它,但我找不到要直接输入的文本字段。UITextFieldTextDidBeginEditingNotification或者UITextViewTextDidBeginEditingNotification永远不会被解雇。我确实看到UIKeyboardWillShowNotification等正确发出。

最终结果必须获得 App Store 批准,这一点很重要。

4

1 回答 1

0

编辑:

当键盘通知到来时,请注意哪个 HTML 元素被聚焦。然后让您的视图控制器成为第一响应者。

[self becomeFirstResponder];

您的视图控制器应该成为第一响应者并返回您的自定义输入视图。

- (BOOL)canBecomeFirstResponder {
    return YES;
}

- (UIView*)inputView {
    return _customInputView;
}

当您的自定义输入视图获得输入时,您可以将其传递给 HTML 元素。

NSString* script = [NSString stringWithFormat:@"element.value += '%@';", input];
[_webView stringByEvaluatingJavascriptFromString:script];
于 2013-08-30T02:18:13.233 回答