iOSpush过后返回多级界面

有导航控制器push过后pop可以反回上一个界面,然而我们需要返回多级界面有下面两种方法

调用API

- (NSArray *)popToViewController:(UIViewController *)viewController animated:(BOOL)animated;  

1.通过取得在导航控制器里面的控制器的下标 来返回

 [self.navigationController popToViewController:[self.navigationController.viewControllers objectAtIndex:1] animated:YES];

2.遍历导航控制器里面的控制器找到想要返回的那一个

 for (UIViewController *controller in self.navigationController.viewControllers) {
        if ([controller isKindOfClass:[UserInfoControl class]]) {
            [self.navigationController popToViewController:controller animated:YES];
        }
    }

原文地址:https://www.cnblogs.com/hxwj/p/4638321.html