如果我在页面加载完成之前尝试单击另一个链接,didFailLoadWithError:触发并取消隐藏我隐藏的连接问题图像。这是我正在使用的代码:
- (void)webViewDidFinishLoad:(UIWebView *)webView {
NSLog(@"didFinish: %@; stillLoading:%@", [[webView request]URL],
(webView.loading?@"NO":@"YES"));
}
-(void)webView:(UIWebView *)myWebView didFailLoadWithError:(NSError *)error {
NSLog(@"No internet connection");
_connectionError.hidden = NO;
}
有没有人知道如何让它在应用启动时只运行一次,而在剩余的时间内再也不会再运行?
答案 0 :(得分:0)
这是每次失败时触发的委托方法。
尝试这样的事情。 (在标题中创建名为firstTimeRun的BOOL)
-(void)webView:(UIWebView *)myWebView didFailLoadWithError:(NSError *)error {
if (firstTimeRun) {
_connectionError.hidden = NO;
firstTimeRun = NO;
}
}
如果您只想在第一次加载时想要这样做,请记住在加载网站时将firstTimeRun设置为NO。
编辑:
在您的Header文件(.h)中,您可以编写以下内容
@interface ... {
@property BOOL firstTimeRun;
}
您可能需要在方法中的某个位置初始化它。在我可以帮助你之前,你需要发布你班级的.h和.m文件。