我正在尝试找出在xcode中使用后退按钮时重新加载特定页面的最佳方法。这就是我现在所拥有的
-(IBAction)backButton {
[webView goBack];
[webView reload];
}
我想要发生的一切,不是在点击后退按钮时刷新每一页,我只希望我的本地html被刷新,所以像
-(IBAction)backButton {
[webView goBack];
if ("url matches localHTML"){
[webView reload];
}
}
我想要刷新的localHTML只是主页。我知道解决方案不会像上面那么简单,但我只是想告诉你我在寻找什么。谢谢你的帮助。
答案 0 :(得分:0)
您是否检查过委托方法[UIWebViewDelegate webView:shouldStartLoadWithRequest:navigationType:]?
如果请求中的网址与您要允许的网址不匹配,您似乎可以返回NO(即不加载)。
如果您只想刷新本地HTML,请执行以下操作:
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
NSURL * urlWeAreConsidering = [request URL];
if([urlWeAreConsidering isFileURL] == NO)
{
// sends off a separate request
[webView loadRequest: [NSURL URLWithString: @"file://LocalURL"]];
return NO;
}
return YES;
}
如果您还在使用其他域名,那么您可以使用我在其中编写的代码段来处理该域名,以允许从该域名进行初始提取。