iOS 回到rootViewController根控制器视图
直接上代码
- (void)backToRootViewController{
UIViewController* vc = [MainViewController instance].navigationController.visibleViewController;
if ([vc isEqual:[MainViewController instance]]) return;
if (vc.presentingViewController) {
[vc dismissViewControllerAnimated:NO completion:^{
[self backToRootViewController];
}];
}
else{
[vc.navigationController popViewControllerAnimated:NO];
[self backToRootViewController];
}
}
上面的代码需要一个根控制器的实例对象,原理是迭代弹出栈顶控制器,直到返回根控制器为止,这里不显示动画。如果需要显示动画,需使用CATransaction来控制popViewControllerAnimated动画结束再再次执行调用,不然肯定会出错。个人觉得也没有必要,谁也不想返回到主页面可能会花掉数秒钟。
GOOD LUCK!
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。