美文网首页iOS DeviOSiOS项目
WKWebView 回退手动刷新

WKWebView 回退手动刷新

作者: 广锅锅 | 来源:发表于2017-04-19 16:38 被阅读724次

WKWebView回退时不会对页面刷新,就算你修改了回退时的网址,它也不刷新,只能手动刷新。

怎么在回退后手动刷新呢?

1 声明全局变量,存储webview发生返回操作时的标识符

WKNavigation *backNavigation = [webView goBack];

2 在webview代理方法didFinishNavigation里面,判断当前标识符是否==返回标识符

- (void)webView:(WKWebView *)webView didFinishNavigation:(WKNavigation *)navigation {
    if ([backNavitation isEqual:navigation]) {
        // 这次的加载是点击返回产生的,刷新
        [webview reload];
        backNavigation = nil;
   }
}

相关文章

网友评论

  • 7a946bf5d2ca:我是回调js方法 h5页面处理返回
  • Nedoloroso:goBack返回后,并不会调用didFinishNavigation代理方法啊
    Nedoloroso:@广锅锅 我发现是iOS10开始,goback就不调用didFinishNavigation方法了,确定页面已经加载完成了,iOS8和9是可以的QAQ
    Nedoloroso:@广锅锅 不是的,已经完成了,是一个很简单的页面,实在是没办法,我是在didStartProvisionalNavigation里处理的:joy:
    广锅锅:@Nedoloroso 这个回调是在页面完全加载结束才会执行,所以。。应该返回还没加载完成。
  • syu_zzz:我是滑动返回,有监听的办法吗

本文标题:WKWebView 回退手动刷新

本文链接:https://www.haomeiwen.com/subject/kgrhzttx.html