storyboard总结
来源:互联网 发布:网络说的生煎什么意思 编辑:程序博客网 时间:2024/05/20 23:03
IOS开发中,UI的实现可以使用纯代码的方式,后来可以直接在xcode中编辑xib文件,每个xib文件对应一个view显示,再后来就是stroryboard这个强大的功能了,相比前面两种构建UI的方式,stroryboard有自己的优势。
首先,stroryboard展示了应用中所有视图在概念上的预览以及视图间的衔接关系,有点流程设计图的味道,或者也可以当做是app demo来理解,这样的话,就比单独的xib文件理解程序的流程清晰多了,更别提代码的方式了;其次,storyboard中视图间的切换变得更加简单,不需要代码就可方便实现。它通过叫做"segues"的转化,定义push,model等切换方式,同时还可以指定切换中使用的动画类型。如果是代码方式或者nib文件,则需要在代码中使用[[viewController alloc]init]或者[self.navigationController pushViewController:(UIViewController *)view animated:YES>]等方式实现切换;另外storyboard对表格控制器的支持更加完美,它定义新的cell原型,以及静态cell的特性,这方面的知识可以单独总结。但是storyboard带来一个问题,就是在团队开发中,如果划分模块的话,得把UI部分排除,单独把m、c进行划分,v一个人完成框架,否则同步是个问题。
下面总结下storyboard中视图如何切换,以及在切换过程中数据如何传递。
一、视图切换
ios中有四种视图包含关系,包括tab、导航、page、splite,在iPhone开发中,常用的是tab和导航。这两种包含关系,可以通过在控件面板直接拖动对应的viewController来实现(比如Tab bar controller, navigation controller);还有种方法就是,先拖动普通的view controller,然后给该view controller添加包含关系(Editor -> Embed in -> navigation controller/Tab bar controller)。那么不同的视图相互切换又是怎样的呢?
前后视图的切换一个是push,一个是model。push的话,会自动添加导航条,实现返回上层视图,它多用于查看信息或者编辑信息,方便返回。model的话,多用于添加新的信息。
二、视图传递数据
传递数据包括:(1)从父视图向子视图传递初始化数据(2)子视图返回后,将数据传递给父视图 (3)子视图返回,子视图的关闭。
在IOS中,delegate是个很重要的设计模式,父视图感知子视图的变化,都是通过delegate来实现的,这里也不例外。其实delegate的思想,跟win32中得callback大同小异,方便模块化设计,被调用模块预留callback的定义,然后调用模块实现,达到模块的低耦合,同时又能达到接口和实现的分离。
从父视图向子视图传递数据,在prepareForSegue方法中实现,同时设置子视图的delegate。
当需要从子视图返回时,通过delete,把数据传回。
(1)model方式,关闭子视图使用dismissViewController方法。
(2) push方式,关闭子视图使用popViewController方法。
- storyboard总结
- storyBoard学习总结
- storyboard使用小总结
- iOS StoryBoard 总结
- StoryBoard的优缺点总结
- StoryBoard大总结
- storyBoard的用法总结
- Storyboard 之segue用法总结
- storyboard和xib使用总结
- Storyboard 之segue用法总结
- Storyboard
- Storyboard
- StoryBoard
- Storyboard
- StoryBoard
- Storyboard
- storyboard
- storyboard
- OCP 1Z0 051 86
- 构建ubuntu12.10下构建latex+CJK中文开发环境
- linux awk命令详解
- Android内存机制分析下篇:分析APP内存使用情况
- poj 2401 划分树 求区间第k大的数
- storyboard总结
- Java使用XFire调用WebService接口
- Scala 指南: 集合类型
- Android Sensor感应器介绍,获取用户移动方向,指南针原理
- 查询外网地址的方法
- asp.net mvc中的ajax以及分页入门
- Leetcode中一维数组与应用II
- 软考缉捕令
- 线性光耦原理与电路设计[HCNR200,HCNR201]