多页面跳转:
方法1:
首先初始化_second
跳转:
_second = [[SecondViewControlleralloc] init];
[selfpresentViewController:_secondanimated:YEScompletion:^{
}];
返回:
[selfdismissViewControllerAnimated:YEScompletion:^{
}];
该方法跳转是类似于向上推出去
方法2:(注意这里设置的是全局的_second)
同上首先初始化_second
跳转:给他加载一个视图覆盖主本视图
[self.viewaddSubview:_secondVC.view];
返回:删除父视图
[self.viewremoveFromSuperview];
方法三:方法三的视图切换类似于进棧出棧操作,我们首先要给一个根视图控制器,也就是根基作为棧的最底部的一个值
跳转:
初始化SecondViewController
SecondViewController *secondVC = [[SecondViewControlleralloc] init];
[self.navigationControllerpushViewController:secondVC animated:YES
];
返回:
[self.navigationControllerpopViewControllerAnimated:YES];
另外该页面跳转方式都是左右切换,并且这是一个棧,因此我们keyi根据视图所在棧里 的位置进行跳转
返回值是一个数组
获取导航控制器的栈容器中得vc数组
NSArray *vcArr = self.navigationController.viewControllers;
获取第二个vc
UIViewController *secondVC = [vcArr objectAtIndex:1];
[self.navigationControllerpopToViewController:secondVC animated:YES];