我正在uiwebview上加载一个"网页1",并将其第一个请求保存在实例变量"webviewHistory"上。然后,我必须重用该 Web 视图来加载另一个页面"webpage2"(也将其第一个请求保存到"webviewHistory"),并且历史记录现在应该从此请求开始。问题是如果我从"网页2"执行goBack(按钮IBAction),我可以继续返回到"网页1"历史记录并关注。如果我检查请求并与初始保存进行比较,则有效!但不是通过重定向,例如,如果我触发对 www.youtube.com 的请求,请求将重定向到 m.youtube.com 并且第一个不会保存为导航历史记录!怎么解决?
if (![webViewSocial.request.URL.absoluteString isEqualToString:self.webviewHistory]){
[webViewSocial goBack];
}
UIWebviews 具有实例方法,允许您来回浏览历史记录,而无需跟踪最后一个请求。您专门保存最后一个请求是否有特殊原因?
示例代码:
if ([webView canGoBack]) {
[webView goBack];
}
这里有一个简单的uiwebview浏览器,如果你想玩它:https://github.com/msencenb/UIWebView-Example
对于 swift 3 版本的 Msencenb 回答:
if webView.canGoBack {
webView.goBack()
}