Mar*_*cal 9 uinavigationcontroller ios
是否可以弹出导航控制器两次?我有这个导航结构:
查看一个---->查看二----->查看三个
我想要完成的是,通过View Three上的一行,直接返回View One.我通过protocol-delegate从三到二完成了它,但是在视图中设置委托一个不起作用并设置两个连续的委托协议都弹出导航控制器,给我错误:嵌套导航控制器活动(或类似的东西) ).
任何帮助,将不胜感激.提前致谢!
Pau*_*l.s 34
有几个流行选项
- (UIViewController *)popViewControllerAnimated:(BOOL)animated
- (NSArray *)popToRootViewControllerAnimated:(BOOL)animated
- (NSArray *)popToViewController:(UIViewController *)viewController animated:(BOOL)animated
Run Code Online (Sandbox Code Playgroud)
self.navigationController.viewControllers然后使用该数组来获取要弹出的特定viewControllerFaw*_*sud 13
使用以下代码.您可以使用任何数字而不是-3弹出到不同的级别.
OBJ-C:
ViewController *View = [self.navigationController.viewControllers objectAtIndex:self.navigationController.viewControllers.count-3];
[self.navigationController popToViewController:View animated:YES];
Run Code Online (Sandbox Code Playgroud)
Swift 3.0*:
let controller = self.navigationController?.viewControllers[(self.navigationController?.viewControllers.count)! - 3]
self.navigationController?.popToViewController(controller!, animated: true)
Run Code Online (Sandbox Code Playgroud)
你可以试试这个
[self.navigationController popToViewController:[[self.navigationController viewControllers] objectAtIndex:1] animated:YES];
Run Code Online (Sandbox Code Playgroud)
希望能帮助到你!!
| 归档时间: |
|
| 查看次数: |
10651 次 |
| 最近记录: |