我有3个viewControllers A,B和C。
我使用vcA推送vcB
[self.navigationController pushViewController:vcB animated:YES];当vcB可见时,我按下vcC。
现在我在vcC内部,我想同时删除(或弹出) vcC和vcB,并直接转到vcA。我不想去vcB。我该怎么做?
在显示vcC时,是否可以静默地从堆栈中删除vcB?
谢谢
发布于 2011-08-22 08:30:07
我认为您可以将它们作为一个数组来处理
NSMutableArray *viewControllers = [NSMutableArray arrayWithArray: navigationController.viewControllers];
[viewControllers removeObjectIdenticalTo: removedViewController];
navigationController.viewControllers = viewControllers;发布于 2011-08-22 08:31:08
您是否尝试过:
[self.navigationController popToRootViewControllerAnimated:YES];发布于 2011-08-22 08:32:42
如果您知道A始终是您推送的第一个控制器,那么您应该能够做到:
[self.navigationController popToRootViewControllerAnimated:YES]
或者,如果在A之前堆栈上可能有其他控制器,您可以这样做:
[self.navigationController popToViewController:viewControllerA animated:YES]
References。
https://stackoverflow.com/questions/7142100
复制相似问题