iOS:切换到第二个ViewController

时间:2016-02-07 02:40:41

标签: ios uiviewcontroller

我正在使用Reachability检查Internet连接的脚本。如果没有Internet,我希望它加载第二个ViewController。这就是我到目前为止所做的:

-(BOOL) hasInternet {
    Reachability *reach = [Reachability reachabilityWithHostName:@"http://www.google.com"];
    NetworkStatus internetStatus = [reach currentReachabilityStatus];
    if( internetStatus == NotReachable){
        SecondViewController *second = [[SecondViewController alloc] initWithNibName:nil bundle:nil];
        [self presentViewController:second animated:YES completion:nil];
    }else{

    }
    return YES;
}

我得到的错误是:

  

尝试在ViewController上显示SecondViewController:0x7ff780628d10:0x7ff780719830,其视图不在窗口层次结构中!

任何人都可以看到我出错的地方。

非常感谢您的帮助和时间。

1 个答案:

答案 0 :(得分:1)

  

当第一个ViewController尚未加载时,您正试图呈现另一个viewController。

<强>解决方案:

  1. 在viewDidAppear()方法中调用您的函数。
  2. 编写视图控制器Nib要加载的名称