Мой viewController имеет свойство UIView, которое содержит WKWebView. И я установил делегат WKWebView scrollView для моего viewController, который является общедоступной функцией моего подкласса UIView и вызывается в моем viewController.
Проблема в том, что когда я вызываю [viewController popViewControllerAnimated]
, он вылетает на [UIScrollView setDelegate:]
. Я решил проблему, добавив viewController.UIView.WKWebView.scrollView.delegate = nil;
в dealloc viewController.
Но почему? Dealloc WKWebView находится после dealloc viewController, я полагаю, что viewController установлен в nil, а dealloc в WKWebView обновит свой делегат до nil, а затем вызовет BAD_ACCESS? Но почему dealloc будет неявно вызывать setDelegate ???
scrollView
для просмотра? с сильной ссылкой или нет? - person iSashok   schedule 03.08.2016