页面的跳转一般分为两种:
有navigaqtionBar的跳转,一般是push过去,pop回来,
[self.navigationController pushViewController:saoyisaoVC animated:YES];
popViewController有三种使用方法。
第一种就是,直接返回到上一层。
[self.navigationController popViewControllerAnimated:YES];
这种数据类型是UIViewController类型。
第二种就是返回到某一层。
[self.navigationController popToRootViewControllerAnimated:YES];
这种相当于直接返回主界面,也就是rootViewController
[self.navigationController popToViewController:vcHome animated:YES];
这里需要填写的数据就不是UIViewController了,而是数组。所以需要转型。
例如:我要返回到HomeViewController这个视图控制器里面
for (UIViewController *vc in self.navigationController.viewControllers) {
if ([vc isKindOfClass:[HomeViewController class]]) {
[self.navigationController popToViewController:vc animated:YES];
}
}
当然如果你返回到这个页面需要传一些参数的话,也是可以的。按照正常的传参步骤就可以了
例如:将当前界面的手机号传到HomeViewController页面。
HomeViewController *vcHome = [[HomeViewController alloc] init];
vcHome.strPhone = self.strPhone;
没有navigationBar的跳转,present过去,dismiss回来
[self presentViewController:vc animated:YES completion:^{
}];
[self dismissViewControllerAnimated:YES completion:^{
}];
block中可以做一些页面的传值。