IOS开发-使用Storyboard进行界面跳转
来源:互联网 发布:小鸡模拟器支持java 编辑:程序博客网 时间:2024/05/16 07:47
前言:苹果官方是推荐我们将所有的UI都使用Storyboard去搭建,Storyboard也是一个很成熟的工具了。使用Storyboard去搭建所有界面,我们可以很迅捷地搭建出复杂的界面,也就是说能为我们节省大量的时间。我们还可以很直观地看出各个界面之间的关系,修改起来也很方便。将来如果遇到需要作修改的地方,我们只需要找到相对应的Storyboard就可以了,比起以前来说,快捷了不少。
我会在本文的最后附上Demo,可以帮助你们有更直观的理解,有需要的人可以去下载运行一下。
另外,建议大家实验每一种方法时,先清空界面上的内容,以避免出现错误。因为初学者很容易使得界面上有残留,具体的这里就不说明了。接下来,让开始我们的Storyboard之旅吧!
目录:
一、使用Storyboard进行跳转
1)纯Storybard界面操作
2)使用代码进行跳转
二、Storyboard界面传值
1)使用prepareForSegue方法进行跳转:
2)Storyboard Id跳转
一、使用Storyboard进行跳转
1)纯Storyboard界面操作
我们在Storyboard上放置一个按扭,在按扭上方点击并按住“右键”不放,拖动到跳转的下一个界面上。
松开右键后,会有一个黑色透明的弹出框,选择跳转的方式:
从这里可以看到,界面和界面之间多了一条线连接,如下图:
我们可以在Xcode右边的工具栏看到,我们刚刚的连线操作(现在可以运行项目了):
2)使用代码进行跳转
我们把刚刚的连线删除掉,如下图所示:
新建一个继承于UIViewController的类CodeViewController:
选中按扭所在的界面,设置它的类文件,默认都是继承于UIViewController,如下图所示:
我们把它改成刚刚新建的类“CodeViewController”,如下图所示:
把界面缩小(你可以在空白的地方双击一下,或者右键选择缩放比例),这次我们不是直接使用“按扭”连接界面,而是进行界面和界面之间的连线,如下图所示:
注意:100%的缩放是不能进行界面和界面之间的连线!
之后的操作和前面的一致,为了容易理解,我还是贴一下图:
选中“这条线”,在Storyboard Segue的Identifier指定一个标识符,后面我们会用到:
这时我们需要为按扭添加一个事件,为此需要同时显示Storyboard和.m文件,操作如下:
创建事件的操作和之前连线的操作一样:
为这个事件创建一个名字,然后点击Connect:
在事件里添加如下代码,把刚连线的Identifier传进去,sender一般为"self":
[self performSegueWithIdentifier:@"EasyCode" sender:self];
这样,就可以成功跳转了。
题外话:
有部分人是不同意使用Storyboard的,他们的的观点如下:
1)Storyboard出现的错误不能调试,往往使得他们开发缓慢
2)对于多人开发,版本管理会比较复杂
3)Storyboard经常无缘无故出现问题!使得他们很头痛!
首先,对于第1点和第3点的回答:Storyboard出现的错误往往是可以避免的。其次,Storyboard不会无缘无故出现问题,如果真的出现问题了,往往是开发者的操作不当成造成的。我为什么这样说?
因为我以前也遇到很多因Storyboard引起的错误,那时候的我也经常怨Storyboard。但随着对Storyboard越来越熟悉后,我才发现,以前全都是因为自己操作不当,而造成程序的崩溃。
第2点:多人开发,可以区分模块开发,每个人负责的模块都不相同,不一定要所有人的都开发同一个模块。当然,有特殊情况的我也不知道,所以说这个需要根据项目的大小和复杂度去判定的。
- IOS开发-使用Storyboard进行界面跳转
- iOS开发-使用Storyboard进行界面跳转及传值
- IOS开发-使用Storyboard进行界面跳转及传值
- iOS开发-使用Storyboard进行界面跳转及传值
- iOS开发-使用Storyboard进行界面跳转及传值
- iOS开发-使用Storyboard进行界面跳转及传值
- IOS开发-使用Storyboard进行界面跳转及传值
- IOS开发-使用Storyboard进行界面跳转及传值
- iOS开发-使用Storyboard进行界面跳转及传值
- iOS开发-使用Storyboard进行界面跳转及传值
- iOS开发-使用Storyboard进行界面跳转及传值
- iOS开发-使用Storyboard进行界面跳转及传值
- iOS开发-使用Storyboard进行界面跳转及传值
- iOS开发-使用Storyboard进行界面跳转及传值
- IOS开发-使用Storyboard进行界面跳转及传值
- iOS开发-使用Storyboard进行界面跳转及传值
- IOS开发-使用Storyboard进行界面跳转及传值
- IOS开发-使用Storyboard进行界面跳转及传值
- PintOS, kernel panic with -v option bochs on ubuntu
- POJ1635【树的同构】【hash】
- mysql大数据高并发处理
- 简单介绍Matrix的图形特效
- 磁盘与Linux基础
- IOS开发-使用Storyboard进行界面跳转
- Apple移动设备处理器指令集 armv6、armv7、armv7s及arm64
- 修改字段结构之GP工具
- linux下常用FTP命令 1. 连接ftp服务器
- 使用PIL Image裁切图片,制作缩略图代码
- jackson 实体转json 为NULL或者为空不参加序列化
- Andorid解析json的三种方式
- Android studio 安装
- Android中Application的onCreate多次调用问题