是否有可能两次popupUINavigationController?
是否有可能两次popup导航控制器? 我有这个导航结构:
查看一个—->查看两个—–>查看三
我想要完成的是,通过View Three上的一行,直接返回到View One。 我已经通过协议委托,从三个到两个,但设置委托在视图中一个不工作,并设置两个连续的委托协议都popup导航控制器,给我错误:嵌套导航控制器活动(或类似的东西)。
任何帮助,将不胜感激。 提前致谢!
有几个stream行选项
- (UIViewController *)popViewControllerAnimated:(BOOL)animated - (NSArray *)popToRootViewControllerAnimated:(BOOL)animated - (NSArray *)popToViewController:(UIViewController *)viewController animated:(BOOL)animated
- 第一个popup顶部控制器。
- 第二个允许你popup整个堆栈到达根目录。
- 第三个允许你popup到你有一个引用的任何viewController。 您可以使用
self.navigationController.viewControllers
获取self.navigationController.viewControllers
,然后使用该数组获取您想要popup的特定viewController
使用下面的代码。 您可以使用任何数字而不是-3popup取决于您的要求。
代码:
ViewController *View = [self.navigationController.viewControllers objectAtIndex:self.navigationController.viewControllers.count-3]; [self.navigationController popToViewController:View animated:YES];
Swift 3.0 *
让controller = self.navigationController?.viewControllers [(self.navigationController?.viewControllers.count)! – 3]
self.navigationController?.popToViewController(controller!, animated: true)
你可以试试这个
[self.navigationController popToViewController:[[self.navigationController viewControllers] objectAtIndex:1] animated:YES];
希望能帮助到你!!
“自我”似乎在第一次stream行后被释放
UINavigationController *navigationController = self.navigationController; [navigationController popViewControllerAnimated:NO]; [navigationController popViewControllerAnimated:YES];