ios中的界面跳转方式

ios中,两种界面跳转方式

1.NavgationController本身可以作为普通ViewController的容器,它有装Controller的栈,所以可以pushpop它们,实现你所说的跳转。(这种界面跳转方式,利用这种界面跳转方式,view从左边推出)


在oldC的btn的监听方法中调用:
[self.navigationController pushViewController:newC animated:YES]; //跳转到下一页面
在newC的方法中调用:
[self.navigationController popViewControllerAnimated:YES]; //返回上一页面 

当有多次跳转发生并希望返回根控制器时,调用:
[ self .navigationController popToRootViewControllerAnimated: YES ];  //返回根控制器,即最开始的页面


2.presentViewController是在当前Controller上呈现的一个模态ControllerModal Controller),通常用于临时的使用,用完就应该dismiss它,因为在它之上,不可以再present另一个Controller。(这种界面跳转方式,利用这种界面跳转方式,view从下面推上来)

在oldC中调用:
[ self presentViewController:newC animated: YES completion:nil];
在newC中调用:
[ self dismissViewControllerAnimated: YES completion: nil ];


3.直接从最根本的[UIApplication sharedApplication].keyWindow.rootViewController入手来改变这个界面的view。从而实现界面切换

//找到想要的storyboard实例
UIStoryboard *stryBoard=[UIStoryboard storyboardWithName:@"Login" bundle:nil];

//通过更改application中的rootViewController来实现界面的切换
        [UIApplication sharedApplication].keyWindow.rootViewController =
        [stryBoard instantiateInitialViewController];



原文地址:https://www.cnblogs.com/AbeDay/p/5026955.html