UIStoryboardSegue中如何用segue进行传值
来源:互联网 发布:java商城项目 编辑:程序博客网 时间:2024/06/06 03:43
一个UIStoryboardSegue对象负责执行两个试图控制器之间的视觉过渡。另外,segue对象通常用来准备从一个控制器过渡到另一个控制器。segue对象包含了涉及过渡的控制器的信息。当segue被触发,并且在视觉过渡发生之前,正在运行的storyboard调用当前的视图控制器的prepareForSegue:sender:
方法从而可以传送任何将要展示的必须数据到下一个视图控制器。
UIStoryboardSegue类支持UIKit提供的标准视觉过渡。您还可以继承到您的故事板文件中定义的视图控制器之间的自定义转换。
你不必直接创建segue对象。运行的storyboard创建他们当它必须执行一个在两个视图之间的segue时候。如果你希望的话,你也可以通过编程的方法启动一个segue通过使用UIViewController中的performSegueWithIdentifier:sender:
方法。你可以通过这种方法启动一个segue从通过代码添加的资源并且在Interface builder中不可用。
子类注意事项:
你可以继承UIStoryboard当你想在应用中的视图控制器之间提供一个自定义过渡。用自己定义的segue,创建一个segue line在interface buider上恰当的视图控制器之间并且设置他的类型为自定的监督类型;你必须指定segue的类名用来检查用。
当故事板运行时检测到一个自定义的segue,它创建类的一个新实例,与视图控制器对象对其进行配置,要求源视图控制器为segue做准备,然后执行segue。
需要重载的方法:
对于自定义的segues,你需要重载的主要方法是perform. 运行的storyboard调用这个方法当执行从一个在 sourceViewController
的视图控制器过渡到一个destinationViewController
的视图控制器。如你需要初始化任何变量在你的自定义segue子类,你同样可以重载initWithIdentifier:source:destination:
方法并且在你自定义实现中初始化他们。
替代子类:
如果你的segue不需要携带附加的信息或者提供除了 perform方法以外的任何方法,考虑使用segueWithIdentifier:source:destination:performHandler: 方法代替。
①自动segue:
直接从相应的控件连线到相应的ViewController,然后选择push
②手动segue:
从登陆界面连线到相应的ViewController,然后选择push。
然后在响应的事件中添加如下代码:
- (IBAction)clicktoTwo:(id)sender { [self performSegueWithIdentifier:@"oneToTwo" sender:nil]; }
其中oneToTwo是segue的ID
如果要将数据传入下一个ViewController中,需要以下方法:
//执行segue后,将要跳转前执行。 -(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { UIViewController *vc = segue.destinationViewController; [vc.navigationItem setTitle:[NSString stringWithFormat:@"%@的联系人",self.textfieldName.text]]; }
- UIStoryboardSegue中如何用segue进行传值
- 缓存中如何用aspnetpager进行分页
- 如何用Cximage在缓冲区(内存)中进行图片格式转换
- 在excel中如何用VLOOKUP进行模糊查找
- Hibernate中如何用HQL进行模糊查询
- R中如何用ifelse进行数据分组
- 如何用Myeclipse进行调试
- 如何用花生壳进行端口映射
- 如何用敏捷进行自我管理
- 如何用Myeclipse进行调试
- 如何用Myeclipse进行调试
- 项目管理中如何用挣值
- UIStoryboardSegue(二)segue几种不同的类型
- UIStoryboardSegue
- UIStoryboardSegue
- 如何用Handler实现传值
- VC中如何用OCX
- iOS中如何用锁
- Linux kernel 分析之三:加电BIOS启动
- 下拉选择------PopupWindow
- Xadmin文档(一)
- android开发-控件和监听
- 编译驱动---指定编译器
- UIStoryboardSegue中如何用segue进行传值
- 计算机网络习题辅导
- Eclipse JNI实现头文件报错:parameter name omitted
- 暑假集训第二周——贪心 C -装箱
- 大数据运营-服务型企业架构新思维
- struts(五) 使用通配符 接收参数
- hdu 2473 Junk-Mail Filter(并查集(虚拟父节点))
- Android:Back button 和 Action Bar UP button 不完全解析
- 大数据处理时的一种BitMap小算法