2016-04-27 41 views
0

我有嵌入firstNavigationController具有模式顺着接下去嵌入到另一个secondNavigationControllersecondViewController一个firstViewController。这种新的控制器执行开卷SEGUE回firstViewController开卷Segue公司进入回过了头

secondViewController

- (void) cancelAction{ 
    [self performSegueWithIdentifier:@"backHoney" sender:self]; 
} 

firstViewController:

- (IBAction)backToHoney:(UIStoryboardSegue *)sender{ 
} 

这工作,但有当嵌入另一个viewC的情况下, Nav有一个模态延续到firstViewController。当用户从这个viewCfirstViewController然后到secondViewController,并试图放松回到第一个时,它将展开回到viewC而不是第一个。

回答

0

你应该使用popToviewController而不是unwing segue。你可以通过这个去导航堆栈的任何viewController。

例如,

NSArray *viewArr = [self.navigationController viewControllers]; //returs viewcontroller array 
[self.navigationController popToViewController:[viewArr objectAtIndex:0] animated:YES]; 
//you can pass different index to go to differen VC 

你可以参考我的this answer了解更多详情。

希望这会有所帮助:)

+0

我需要从'secondNavController'退出到'firstNavController'。还传递数据。这不仅仅是为了浏览同一个NavController中的所有viewController吗? @Lion – Peter

+0

你可以使用委托和协议来传递数据。没有必要使用unwind segue。 – Lion