2012-04-17 79 views
-2

在appDelegate中,我创建了一个A_NavigationController成为self.window.rootViewController,并且设置了一个X_ViewController成为rootViewController,在其他viewController推送后,我创建了一个新的B_NavigationController,设置了一个新的Y_ViewController成为rootViewController并使用presentModalViewController方法,添加了B_NavigationeController。现在我想要做的是,当我解雇Y_ViewController时,可以更改A_NavigationController的rootViewController。如何更改navigationController的rootViewController

 self.viewController = [[AViewController alloc] initWithNibName:@"AViewController" bundle:nil]; 
    self.navCon=[[UINavigationController alloc]initWithRootViewController:self.viewController]; 

    self.window.rootViewController = self.navCon; 


    BViewController *bView=[[BViewController alloc]initWithNibName:@"BViewController" bundle:nil]; 
     UINavigationController *navCon=[[UINavigationController alloc]initWithRootViewController:bView]; 
     [self.navigationController presentModalViewController:navCon animated:YES]; 

//in BViewController.m 
//I want a method to change the window's rootViewController. 
+0

你问它2天前,http://stackoverflow.com/questions/10154765/change-the-rootviewcontroller – iNoob 2012-04-17 03:23:40

+0

尝试popToViewController – WhiteTiger 2012-04-17 06:18:08

回答

0

“rootViewController”只是navigationStack底部的UIViewController。要改变它,你可以设置对象索引0到任何你想要的控制器

相关问题