Wkwebview – 上次访问过的屏幕
我有一个wkwebview,我将在选项卡之间切换以加载不同的URL,例如URLl1,url 2和URL 3。
考虑一下场景:
-
在带有URL 1的第一个选项卡中,单击链接或执行某些操作,然后转到带有URL 2的第二个选项卡。
-
当回到带有URL 1的第一个选项卡时,我需要从我离开的位置完全加载网页。
从架构上讲,为每个选项卡分配WKWebView更有意义,并在更改选项卡时加载相关的URL。 您可以使用以下方法拦截导航:
(void)webView:(WKWebView *)webView decidePolicyForNavigationAction:(WKNavigationAction *)navigationAction decisionHandler:(void (^)(WKNavigationActionPolicy))decisionHandler;
并从WKNavigationAction
对象获取请求。 使用该请求在另一个WKWebView中加载URL。
让每个WKWebView管理自己的历史堆栈。 Cookie也应该在WKWebViews之间共享,因此使用多个WKWebView不会出现问题。