В моей раскадровке у меня есть что-то вроде отдельной панели навигации (три кнопки подряд), а под этой панелью навигации должен быть WKWebView.
Поэтому я создаю UIView с именем webViewSize и реализую WKWebView.
var webView: WKWebView!
@IBOutlet weak var webViewSize: UIView!
override func viewDidLoad() {
super.viewDidLoad()
webView = WKWebView()
webView.navigationDelegate = self
self.webViewSize = self.webView
dispatch_async(dispatch_get_main_queue()) {
if self.url.characters.count > 0 {
if let url = NSURL(string: self.url) {
self.webView.loadRequest(NSURLRequest(URL: url))
self.webView.allowsBackForwardNavigationGestures = true
}
}
}
}
Через несколько секунд вызывается делегат WK didFinishNavigation, но ничего не отображается. Когда я меняю self.webViewSize = self.webView
на self.view = self.webView
, все работает нормально.
Я много искал, чтобы справиться с этим. Я работал с подвидами, повторяю строку self.webViewSize = self.webView
в didFinishNavigation, но ничего не получается.
В чем моя ошибка?
PS: я знаю, что это Swift 2, но это старый проект. Атм я должен справиться с этим. Он будет преобразован во времени.