iOS界面之间的跳转方式

iOS界面之间的跳转方式基本有3种。
1、改变window的根视图

  [self.window setRootViewController:VC];

2、模态弹出

     [self  presentViewController:nextVC  animated:YES completion:nil];//从当前界面到nextVC
 [self dismissViewControllerAnimated:YES completion:nil];//从nextVC界面回去

3 用 UINavigationController push 进来和pop回去

 [self.navigationController pushViewController:nextVC animated:YES];//从当前界面到nextVC这个界面
   [self.navigationController popViewControllerAnimated:YES];//nextVC这个界面回到上一界面
    [self.navigationController popToRootViewControllerAnimated:YES];//回到根视图界面

     //self.navigationController.viewControllers 是一个数组里面存放所有之前push过来的界面,如果想要跳回到指定界面 只需要根据索引值取出响应的界面pop回去


       MainViewController *MainVC =self.navigationController.viewControllers[1];
    [self.navigationController popToViewController:MainVC animated:YES];
iOS中,常用的视图跳转方式有以下几种: 1. 使用导航控制器进行视图跳转 在当前视图控制器中使用以下代码进行跳转: ``` let vc = NextViewController() self.navigationController?.pushViewController(vc, animated: true) ``` 其中`NextViewController`是要跳转的目标视图控制器,`pushViewController`方法可以将目标视图控制器推入导航控制器中,即进行跳转。 在目标视图控制器中,可以使用以下代码返回上一级视图控制器: ``` self.navigationController?.popViewController(animated: true) ``` 2. 使用模态视图(Modal)进行视图跳转 在当前视图控制器中使用以下代码进行跳转: ``` let vc = NextViewController() self.present(vc, animated: true, completion: nil) ``` 其中`NextViewController`是要跳转的目标视图控制器,`present`方法可以将目标视图控制器以模态视图的形式展示出来,即进行跳转。 在目标视图控制器中,可以使用以下代码返回上一级视图控制器: ``` self.dismiss(animated: true, completion: nil) ``` 3. 使用TabBar进行视图跳转 使用TabBar可以在不同的视图控制器之间进行切换,常用于应用程序主界面的导航。 在当前视图控制器中使用以下代码进行跳转: ``` self.tabBarController?.selectedIndex = 1 ``` 其中`selectedIndex`是TabBar中要切换到的视图控制器的索引,从0开始计数。 4. 使用代码手动加载视图进行跳转 在当前视图控制器中使用以下代码进行跳转: ``` let vc = NextViewController() self.view.addSubview(vc.view) self.addChild(vc) vc.didMove(toParent: self) ``` 其中`NextViewController`是要跳转的目标视图控制器,通过将其`view`添加到当前视图控制器中,来展示目标视图控制器的内容。 在目标视图控制器中,可以使用以下代码返回上一级视图控制器: ``` self.willMove(toParent: nil) self.view.removeFromSuperview() self.removeFromParent() ``` 以上就是iOS中常用的视图跳转方式,可以根据需要选择合适的方式进行跳转
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值