gpt4 book ai didi

ios - `didFailLoadWithError:` 问题

转载 作者:行者123 更新时间:2023-11-28 22:33:25 27 4
gpt4 key购买 nike

我注意到我的 WebView 中有一个奇怪的错误。我有一个应用程序可以检查设备是否已连接到互联网,如果已连接,则错误图像将保持隐藏状态。如果未连接,我取消隐藏错误图像。问题是,如果我在页面加载完成之前尝试单击另一个链接,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;
}

如果我等到我在日志中看到“仍在加载”,然后按另一个链接,一切都很好。如果我在看到该消息之前按下链接,则 didFailLoadWithError: 会触发并取消隐藏连接问题。我对 Objective-C 和一般编程都非常陌生,所以我不知道如何解决这个问题。

有什么简单的方法可以让 didFailLoadWithError: 在应用程序启动时只运行一次?

最佳答案

每次网页 View 加载失败时都会调用 didFailLoadWithError,当您在当前页面加载完成之前尝试加载另一个页面时会发生这种情况。

您应该尝试其他方法来检测是否没有互联网连接,例如使用 Reachability: http://developer.apple.com/library/ios/#samplecode/Reachability/Introduction/Intro.html

另一种方法是简单地调用 webView:shouldStartLoadWithRequest:navigationType: 委托(delegate)方法中的 stopLoading 方法,用于当用户点击另一个链接时触发 didFailLoadWithError 的特定情况,而前一个链接仍在 Web View 中加载。

关于ios - `didFailLoadWithError:` 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16804497/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com