一次阻止WKWebView缩放导致的崩溃!
原创
©著作权归作者所有:来自51CTO博客作者haocold的原创作品,请联系作者获取转载授权,否则将追究法律责任
场景
因为业务需要,H5没有处理页面缩放。
所以,要APP端处理H5页面的缩放。
于是,使用了下面的方式:
WKWebView *webView = [[WKWebView alloc] init];
webView.scrollView.delegate = self;
......
#pragma mark - UIScrollViewDelegate
- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView{
return nil; // 返回 nil, 不让页面缩放
于是,当前控制器 pop
之后
就光荣的 Crash
了 !
看了下当前线程的方法调用,发现
WKWebView
在 dealloc
之后
更新了 scrollView
的代理
最后 __forwarding
时崩溃了
看图说话:
办法
在dealloc
方法中置空代理,搞定!
- (void)dealloc{
_webView.scrollView.delegate