У меня проблема с удалением наблюдателя из моего viewController с именем «myBrowser». У меня есть панель ProgressView, вот код, в который я добавляю наблюдателя:
webView!.addObserver(self, forKeyPath: "estimatedProgress", options: .New, context: nil)
в этом контроллере у меня есть кнопка, которая позволяет мне вернуться к другому контроллеру:
@IBAction func disa(sender: UIBarButtonItem) {
self.navigationController?.popViewControllerAnimated(true)
}
если я добавлю
webView?.removeObserver(self, forKeyPath: "estimatedProgress")
внутри disa func, мое приложение вылетает из-за того, что «WKWebView был освобожден, в то время как наблюдатели значений ключа все еще были зарегистрированы с ним»… я попытался поместить removeObserver в viewDidDisapper, в viewWillDisappear, но мое приложение все еще аварийно завершает работу, если я нажимаю кнопку до того, как панель progressView полностью загружена .
Как я могу решить эту проблему?