2016-09-13 104 views
0

我正在使用两个故事板一个主要和另一个仪表板。 成功响应后,我加载LGSideMenu三次ViewDidload方法调用

问题是DashboardViewController ViewDidLoad正在调用3次。

-(void)loadDashboardController{ 

    dispatch_async(dispatch_get_main_queue(), ^{ 
     UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Dashboard" bundle:nil]; 

     UINavigationController *navigationController = [storyboard instantiateViewControllerWithIdentifier:@"NavigationController"]; 
     DashboardViewController *mainViewController = [storyboard instantiateInitialViewController]; 
     mainViewController.rootViewController = navigationController; 
     [mainViewController setupWithPresentationStyle:LGSideMenuPresentationStyleSlideAbove type:0]; 
     UIWindow *window = [UIApplication sharedApplication].delegate.window; 
     window.rootViewController = mainViewController; 
     [UIView transitionWithView:window 
          duration:0.3 
          options:UIViewAnimationOptionTransitionCrossDissolve 
         animations:nil 
         completion:nil]; 
    }); 
} 

是否有人面临这种​​问题?

回答

0

您应该只在您的应用程序的窗口上设置rootviewcontroller一次。而已。其他视图控制器应该被按下,或者你应该设置为navigation controllerviewocontrollers。所以只设置,

window.rootViewController = mainViewController; 

    //or 

    window.rootViewController = navigationcontroller;