解雇2个viewControllers

时间:2011-03-24 00:36:16

标签: iphone uiviewcontroller

是否可以有效地解除2个viewControllers?

我目前有3个viewController

View1>提出View2,View2>介绍View3,然后当在View3中触发一个动作时,我需要返回到View1 Viewcontroller。

如何在不创建新的View1对象的情况下完成此操作?

2 个答案:

答案 0 :(得分:1)

[self.navigationController popToRootViewControllerAnimated:YES];

或者

int index=[[self.navigtionController viewControllers] indexOfObject:self]-2;
//make sure index is within the range of the array otherwise it will do bad things.
UIViewController *vc=[[self.navigationController viewControllers] objectAtIndex:index];
[self.navigationController popToViewController:vc animated:YES];

可以使用

答案 1 :(得分:0)

由于它们都是模态呈现的,你最好的选择可能是将view2设置为view3的委托,这样View3就可以调用委托方法来解除view3和view2。