ios ViewController 页面跳转
从一个Controller跳转到另一个Controller时,一般有以下2种:
1、利用UINavigationController,调用pushViewController,进行跳转;这种采用压栈和出栈的方式,进行Controller的管理。调用popViewControllerAnimated方法可以返回。
DPViewController *dViewController = [[DPViewController alloc] init];
[self.navigationController pushViewController: dViewController animated:true];
返回上一界面:
[self.navigationController popViewControllerAnimated:NO];
返回到指定界面:
UIViewController *target = nil;
for(UIViewController * controller in self.navigationController.viewControllers)
{
if([controller isKindOfClass:[DPCameraSettingsViewController class]])
{
target=controller;
}
}
if(target)
{
[self.navigationController popToViewController:target animated:YES];
}
2、利用UIViewController自身的presentViewController,进行跳转:
DPViewController *dViewController = [[DPViewController alloc] init];
dViewController.modalTransitionStyle = UIModalTransitionStyleCoverVertical;//页面切换效果设置
[self presentViewController:dViewController animated:YES completion:nil];
可供使用的效果:
UIModalTransitionStyleCoverVertical
UIModalTransitionStyleFlipHorizontal
UIModalTransitionStyleCrossDissolve
UIModalTransitionStylePartialCurl
//返回
[self dismissViewControllerAnimated:YES completion:nil];