我知道很容易弹出到之前的 viewController
:
[self.navigationController popViewControllerAnimated:YES];
但是,是否可以弹出,不是前一个 View ,而是 n - 2 或 n - 3 View ?
最佳答案
是的,但必须以不同的方式完成,首先从导航 Controller 中获取当前的 View Controller 堆栈:
NSMutableArray *viewControllers = [self.navigationController.viewControllers mutableCopy];
在代码中,您会看到我已将数组设为可变,现在您可以操作该数组:
NSRange range = NSMakeRange(2, 2);
[viewControllers removeObjectsInRange:range];
这里我从位置2删除了2个 View Controller ,当然还有很多方法可以从数组中删除/添加 Controller 。
然后只需将新数组分配给navigationController:
[self.navigationController setViewControllers:viewControllers animated:YES];
关于ios - 是否可以弹出到 n - 2 或 n - 3 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19399230/