ios中,两种界面跳转方式
1.NavgationController本身可以作为普通ViewController的容器,它有装Controller的栈,所以可以push和pop它们,实现你所说的跳转。(这种界面跳转方式,利用这种界面跳转方式,view从左边推出)
在oldC的btn的监听方法中调用:
[self.navigationController pushViewController:newC animated:YES]; //跳转到下一页面
在newC的方法中调用:
[self.navigationController popViewControllerAnimated:YES]; //返回上一页面
当有多次跳转发生并希望返回根控制器时,调用:
[ self .navigationController popToRootViewControllerAnimated: YES ]; //返回根控制器,即最开始的页面
2.presentViewController是在当前Controller上呈现的一个模态Controller(Modal
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];