嗨,我目前在我的 Swift 3 项目中使用 WKWebView。是否可以在另一个类中保留相同的 WKWebView,以便您在不同的类中运行一个主 WKWebView?
我尝试使用 WKProcessPool 和 WKWebsiteDataStorage 来执行此操作,但是当我在另一个类中设置新的 WKWebView 时,我不知道如何引用现有配置/登录 wkwebview。
我已经在互联网上查看了所有内容,但找不到解决方案。我希望您了解我的问题并知道解决方案。提前致谢!!
嗨,我目前在我的 Swift 3 项目中使用 WKWebView。是否可以在另一个类中保留相同的 WKWebView,以便您在不同的类中运行一个主 WKWebView?
我尝试使用 WKProcessPool 和 WKWebsiteDataStorage 来执行此操作,但是当我在另一个类中设置新的 WKWebView 时,我不知道如何引用现有配置/登录 wkwebview。
我已经在互联网上查看了所有内容,但找不到解决方案。我希望您了解我的问题并知道解决方案。提前致谢!!
史蒂夫。如果您想对所有 Web 视图实例使用相同的配置,只需使用静态属性/方法创建类或扩展。例如:
extension WKWebViewConfiguration {
static var shared : WKWebViewConfiguration {
if _sharedConfiguration == nil {
_sharedConfiguration = WKWebViewConfiguration()
_sharedConfiguration.websiteDataStore = WKWebsiteDataStore.default()
_sharedConfiguration.userContentController = WKUserContentController()
_sharedConfiguration.preferences.javaScriptEnabled = true
_sharedConfiguration.preferences.javaScriptCanOpenWindowsAutomatically = false
}
return _sharedConfiguration
}
private static var _sharedConfiguration : WKWebViewConfiguration!
}
如果您只想在 Web 视图实例之间共享 cookie,WKWebsiteDataStore.default()
请为您的WKWebViewConfiguration
实例使用单例对象。