当没有互联网时,可达性不会在启动时显示图像..但是当我在启动后关闭互联网时

时间:2014-05-21 13:27:01

标签: ios reachability

这是我的代码..希望你们能帮助我!

当我使用互联网运行应用程序并关闭互联网以后它可以完美运行,但每当我启动它而没有互联网时它就不会显示图像..

[super viewDidLoad];

[webView loadRequest: [NSURLRequest requestWithURL:
                       [NSURL URLWithString:@"http://www.google.nl"]]];

Reachability * reach = [Reachability reachabilityForInternetConnection];
UIImageView *RbackgroundView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"image"]];
reach.reachableBlock = ^(Reachability * reachability)
{
    dispatch_async(dispatch_get_main_queue(), ^{

        [RbackgroundView removeFromSuperview];
    });
};

reach.unreachableBlock = ^(Reachability * reachability)
{
    dispatch_async(dispatch_get_main_queue(), ^{

        [self.webView addSubview:RbackgroundView];
        [self.webView bringSubviewToFront:RbackgroundView];
    });
};

[reach startNotifier];

}

1 个答案:

答案 0 :(得分:0)

您还必须检查当前NetworkStatus并更新UI,以及设置可到达/无法访问的块。请注意,当可达性发生变化时,您将收到通知,因此当您使用一种状态启动时(例如,没有互联网),可达性不会通知您,直到状态更改为其他状态。 (打开wifi)。这是代码的样子。

NetworkStatus internetStatus = [reach currentReachabilityStatus];
switch (internetStatus) {
    case NotReachable:
    {
        // update UI, for example [RbackgroundView removeFromSuperview];
    }
        break;
    case ReachableViaWiFi:
    {
        // update UI
    }
        break;
    case ReachableViaWWAN:
    {
        // update UI
    }
        break;
}