iOS5新特性之Storyboard
来源:互联网 发布:centos iso 本地yum 编辑:程序博客网 时间:2024/04/29 04:50
iOS5新特性之Storyboard
一 、简述
Storyboard是你可以用来定义用户界面的一种新的方式,像xib。
与xib不同的是它可以同时管理多个ViewController,而且可以在Storyboard中配置ViewController 之间的跳转关系。
二、Storyboard使用
如果你是创建新项目,Xcode模版可以提供一个配置好的Storyboard供你使用。对于其它的应用,使用Storyboard的过程如下:
1、配置应用程序Info.plist文件
- 添加UIMainStoryboardFile ,值为storyboard的文件名。
- 删除原来的NSMainNibFile
2、像以前创建xib文件一样创建一个storyboard文件
3、配置 storyboard中的viewController
三、Storyboard的创建
你可以用InterfaceBuilder 去为你的应用程序创建一个Stroyboard,一般来说一个应用使用一个 Storyboard就够了,但是如果你想创建多个也是可以的,只要你愿意。一个 Stroyboard应该至少含有一个ViewController。
在iPhone中,对于每一个在Storyboard的ViewController都管理着一个scene,每个scene又管理着screen上的东东,但对于iPad来说,多个scene可以同时呈现在一个screen上。你可以从library中拖拽viewController到你的Storyboard上。
当你想关联两个viewController时,你可以按着control键,用鼠标从一个ViewController中的button,table view cell…拖拽连接到另一个你想跳转到的ViewController,这样就创建了一个segue,不要忘记设置identifier哦。
四、 Scene之间的数据传递
当你从当前 scene中触发一个segue的时候,系统会自动调用prepareForSegue:sender:这个方法。如果你想从一个界面切换到里另一个界面的时候传递数据,你应该override这个方法。
五、ViewController之间的跳转
1、如果在 Storyboard中当前的 ViewController和要跳转的ViewController之间的segue存在,则可以执行performSegueWithIdentifier:sender:这个方法实现跳转。
2、如果目标ViewController存在Storyboard中,但是没有segue。你可以通过UIStoryboard的instantiateViewControllerWithIdentifier:这个方法获取到它,然后再用你想要的方式实现跳转,如:压栈。
3、如果目标ViewController不存在,那就去创建它吧。
尊重原创!原文:http://www.cnblogs.com/uniy/archive/2011/12/17/2290971.html
补:
story board是xcode4.2新增的一个特性,它将原有工程中的所有xib文件集成在一起,用拖拽的方式建立2个viewController之间的跳转关系,使得整个程序的UI跳转逻辑清楚明了。使用storyboard后,界面相关的代码编写将更少。
简单说一个storyboard是个什么东西。storyboard引入了2个概念:
scene: 一个场景, 由一个viewController和相关的xib表示
segue: ['seiɡwei] n. 继续,持续。用于连接scenes,segue有多种类型,包括:
Push, Modal, Popover and more
segue 也负责传递数据和返回数据。
整个程序的界面转换就是在scene之间切换。界面跳转关系,比如按哪个键跳到哪个界面,由segue来描述。segue也可以带数据,以便做数据传递。.
StoryBoard里一个viewController管理一个scene,对于iphone应用来说,屏幕上只能显示一个scene,但ipad应用,可以同时显示多个scene。
来源:http://www.cnblogs.com/mybkn/archive/2012/03/18/2404245.html
- iOS5新特性之Storyboard
- Storyboard学习要点(iOS5新特性学习之二)
- iOS5的新特性
- iOS5新特性:ARC
- iOS5 UIKit新特性
- iOS5 新API 特性
- iOS5 UIKit新特性
- iOS5新特性:用Storyboard如何传参和自定义切换动画
- iOS5 之 Storyboard (Storyboarding) 用法
- iOS: iOS5新特性 ARC
- [ios开发ios5新特性之]如何在iOS5中定制用户界面
- Automatic Reference Counting(ARC)特性学习(iOS5新特性学习之五)
- Automatic Reference Counting(ARC)特性学习(iOS5新特性学习之五)
- iOS 5 Storyboard新特性
- iOS5新特性:iCloud代码示例
- iOS5新特性:强大的Core Image
- iOS5中TableView的新特性
- ios5的新特性和潜规则
- 链表(单链表和双链表)
- silverlight 可视化树VisualTreeHelper
- 利用Java泛型实现简单的泛型方法
- MVC2如何打开MVC1中的项目
- 116 - Unidirectional TSP
- iOS5新特性之Storyboard
- C语言中的宏定义
- 远程登入虚拟机如何上传文件
- Spring中自动装配
- linux下查看系统资源和负载,以及性能监控
- ARM-Linux s3c2440 之I2C分析
- WP7 ListBox中如何取得DateTemplate/ItemsPanelTemplate中的命名控件?
- 示例程序 示例一、由 CLSID 得到 ProgID......
- 深度优先算法