我有WKWebView应用程序,我想阻止它解析电话号码和文本链接,我设置
webView.configuration.dataDetectorTypes = [
WKDataDetectorTypes.address
];在实际加载页面之前,但是没有帮助,完整的代码如下所示
let url = URL(string: link)
var urlRequest = URLRequest(url: url!);
var UUID = String();
if ASIdentifierManager.shared().isAdvertisingTrackingEnabled {
UUID = ASIdentifierManager.shared().advertisingIdentifier.uuidString;
}
webView.customUserAgent = String(
format: "%@/%@ %@ EmbeddedBrowser DeviceUID: %@",
getAppName(),
getAppVersion(),
UIWebView().stringByEvaluatingJavaScript(from: "navigator.userAgent")!,
UUID
);
webView.configuration.dataDetectorTypes = [
WKDataDetectorTypes.address
];
webView.navigationDelegate = self;
webView.uiDelegate = self;
webView.stopLoading();
webView.load(urlRequest);发布于 2018-08-31 06:58:56
来自文档
只有在首次初始化web视图时才使用WKWebViewConfiguration。创建web视图后,不能使用该类更改web视图的配置。
你必须这样做:
let config = WKWebViewConfiguration()
config.dataDetectorTypes = [.address]
let webView = WKWebView(frame: .zero, configuration: config)一旦初始化了值,就不能更改它,这就是您现在要做的事情。
发布于 2019-09-18 18:47:46
如果从那里初始化它,也会在Storyboard中设置。使用属性检查器,然后使用Data Detectors组
https://stackoverflow.com/questions/52109918
复制相似问题