2016-08-03 100 views
1

我的viewController有一个UIView属性,它包含一个WKWebView。我设置了WKWebView的scrollView委托给我的viewController,这是我的UIView子类的一个公共职能,并在我的viewController中调用。iOS WKWebView.scrollView委托原因BAD_ACCESS

问题是当我打电话[viewController popViewControllerAnimated]时,它会崩溃[UIScrollView setDelegate:]。 我已经通过在viewController的dealloc中加入viewController.UIView.WKWebView.scrollView.delegate = nil;解决了问题。

但是为什么? WKWebView的dealloc是在viewController的dealloc之后,我认为viewController设置为nil,WKWebView中的dealloc会将其委托更新为零,然后导致BAD_ACCESS?但是为什么dealloc会嵌入setDelegate?

+0

你能提供更多的信息?你如何添加你的'scrollView'来查看?有很强的参考与否? – iSashok

回答

0

在类似的情况下,WKWebView我有类似的问题分配给自己的代表。实施deinit为我解决:

deinit { 
    webView.scrollView.delegate = nil 
}