iOS场景切换
多个场景之间切换的Style总共有5种:
Modal(模态) – 过渡到另一个场景,以完成一项任务。任务完成后,将关闭该场景,并返回到原来的场景。
Push(压入) – 创建一个场景链,用户可在其中前后移动。用于导航视图控制器。
Replace(替换,仅适用于iPad) – 替换当前场景,用于一些iPad特有的视图控制器。
Popover(弹出框,仅适用于iPad) – 一个带箭头的弹出框。
Custome(自定义) – 通过编译在场景之间进行自定义过渡。
常用的两种
第一直接跳
直接跳转 思路大致就是new一个目的页面,然后设置下页面跳转动画 中间还可以做点目的页面的数据初始化:
ViewController *vc = [[ViewController alloc] init];
vc.delegate = self;
[vc setModalTransitionStyle:UIModalTransitionStyleCoverVertical];
[self presentModalViewController:vc animated:YES];
//返回
[self dismissModalViewControllerAnimated:YES];
四种setModalTransitionStyle风格
UIModalTransitionStyleCoverVertical 从底部滑入
UIModalTransitionStyleFlipHorizontal,水平翻转进入
UIModalTransitionStyleCrossDissolve,交叉溶解
UIModalTransitionStylePartialCurl,翻页
解释
Cover Vertical – 新场景从下向上移动,逐渐覆盖旧场景。
Flip Horizontal – 视图水平翻转,以显示背面的新场景。
Cross Dissolve – 旧场景淡出,新场景淡入。
Partial Curl – 旧场景像书页一样翻开,显示下面的新场景。
第二种通过导航
利用UINavigationController,调用pushViewController,进行跳转;这种采用压栈和出栈的方式,进行Controller的管理。调用popViewControllerAnimated方法可以返回
ViewController *vc = [[ViewController alloc] init];
[self.navigationController pushViewController: vc animated:true];
iPad跳转
在iPad应用程序中,还会多出一个Presentation属性,它决定了模态视图在屏幕上的显示方式。有4种显示样式:
Form Sheet(表单) – 将场景调整到比屏幕小(不管朝向),并在当前场景后面显示原始场景,这几乎相当于在一个iPad窗口中显示。
Page Sheet(页面) – 调整场景大小,使其以纵向格式显示。
Full Screen(全屏) – 调整场景大小,使其覆盖整个屏幕。
Current Context(当前上下文) – 以原始场景的显示方式展示场景。
最近才开始往github上放东西 在公司写的又不能放= = 大家姑且看看吧
github地址: https://github.com/FuThD