检查是否有互联网连接webView没有出现

时间:2014-01-16 08:30:37

标签: ios uiwebview reachability

我想知道为什么当我断开网络连接时,我没有得到警报。当我连接时,一切都很好,但是当没有连接时,根本就没有任何东西出现,我在objective-c中很新,但我认为这段代码看起来是正确的。

无论如何,谢谢你的帮助。

- (void)viewDidLoad
{
    webView.hidden = YES;
    NSURL *url = [NSURL URLWithString:@"https://url"];
    webView.scrollView.scrollEnabled = NO;
    NSURLRequest *requestURL = [NSURLRequest requestWithURL:url];
    [webView loadRequest:requestURL];
    if ([[webView stringByEvaluatingJavaScriptFromString:@"document.readyState"] isEqualToString:@"complete"]) {
        webView.hidden = NO;
    }
    self.canDisplayBannerAds = YES;
    [super viewDidLoad];

    // Do any additional setup after loading the view, typically from a nib.
}


-(void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error {

    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"No Internet Connection!"
                                                    message:@"Can't connect. Please check your internet Connection"
                                                   delegate:self
                                          cancelButtonTitle:@"Close"
                                          otherButtonTitles:nil];
    [alert show]; }


- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex {
    exit(0);
}

1 个答案:

答案 0 :(得分:0)

如果您想检查与互联网的连接,那么您必须在代码中进行检查。为此,您可以浏览Apple的Reachbility代码。

如果由于某种原因无法加载页面,则会调用方法webView:didFailLoadWithError:。这意味着它不是连接问题,这可能是由于服务器上的一些内部错误。