ios中的界面跳转方式
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];