【发布时间】:2018-11-11 06:04:14
【问题描述】:
我想控制使用 WKWebView 时显示的键盘。
我有以下启动 webview 的快速代码:
let webView = WKWebView(frame: self.view.bounds, configuration: configuration)
webView.navigationDelegate = self
它将加载如下所示的 html:
<!DOCTYPE html>
<html>
<head>
<title>Test</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<div class="inputElement textFieldInput">
<input type="text" id="textField" value="" data-clear-btn="true"/>
</div>
</body>
</html>
通常键盘由输入字段上的类型选项控制。 “num”表示数字键盘,“text”表示字母数字键盘。但我想拥有更多的控制权。
我已经做了足够的研究,知道这不能通过使用文本框上的选项来完成。我完全期望编写修改打开 webview 的代码。
如何修改 swift 代码以允许我这样做?
理想情况下,我可以定义多个键盘并允许 html 代码控制它们,如下所示:<input type='customkb1'> and <input type='customkb2'>
我迫切需要禁用键盘上的表情符号按钮,但我想要一个通用的解决方案,因为如果我可以定义一个特定于用户输入内容的键盘,我将能够真正提高我的应用程序的可用性。
这是我们目前发现的: 这是我知道并用于应用程序本机部分的技巧: https://stackoverflow.com/a/25861718/1885345
但它不适用于 webViews 这是从 WKWebView 指定键盘的方法: https://stackoverflow.com/a/28533488/1885345
但它没有设置没有表情符号的键盘的选项 这就是我用来禁用第三方键盘的方法: https://stackoverflow.com/a/34863426/1885345
【问题讨论】:
标签: ios swift keyboard wkwebview