做开发时,我们通常会从一个页面push到另一个页面,然后在其中会有无数的push,但是返回上一级的时候,我们都需要返回的是最初的页面,这时候会有两种做法:
1 推出到根视图控制器
[self.navigationController popToRootViewControllerAnimated:YES];
这种情况适用于你原本的页面就是跟视图控制器的情况
2 推出到指定的视图控制器
for (UIViewController *controller in self.navigationController.viewControllers) {
if ([controller isKindOfClass:[AViewController class]]) {
AViewController *A =(AViewController *)controller;
[self.navigationController popToViewController:A animated:YES];
}
}
这里的AViewController就是你push之前的页面。
或者:UIViewController *viewCtl = self.navigationController.viewControllers[2];
[self.navigationController popToViewController:viewCtl animated:YES];
你自己算 你是第几级界面 然后pop回去就可以了
网友评论