Swift-->UIViewController的跳转,参数传递,返回参数

Swift-->UIViewController的跳转,参数传递,返回参数,第1张

概述UIViewController的跳转,可以在Storyboard里面通过拖拽Segue进行跳转,也可以在代码中进行跳转. 本文分别介绍这2种方式. 1:Storyboard的方式 跳转,传递参数 首先选中 一个Button –> 按住 control 键–> 然后拖拽到需要跳转的 ViewController 接着选中中间的曲线, 在右边的属性窗口中 为segue添加 identifier (唯

UIVIEwController的跳转,可以在Storyboard里面通过拖拽Segue进行跳转,也可以在代码中进行跳转.

本文分别介绍这2种方式.

1:Storyboard的方式 跳转,传递参数
首先选中 一个button –> 按住 control 键–> 然后拖拽到需要跳转的 VIEwController

接着选中中间的曲线,在右边的属性窗口中 为segue添加 IDentifIEr (唯一哦)

之后,在button所在的VIEwController中重写prepareForSegue方法

overrIDe func prepareForSegue(segue: UIStoryboardSegue,sender: AnyObject?) {if segue.IDentifIEr == "navTest" {//注意此处.    var params: String    params = "参数"//主要就是通过类型强转,然后通过拿到的对象进行成员变量的赋值,相对于AndroID,这真的是简单粗暴    let nav2Controller = segue.destinationVIEwController as! VIEwController2    nav2Controller.param = params    }}

2:通过代码的方式 跳转,传递参数

首先,选中一个 VIEwController,为 Storyboard 添加一个唯一标识ID

@IBAction func onTestNav() {if let testVC = self.storyboard?.instantiateVIEwControllerWithIDentifIEr("testStory") {let vc = testVC as! TestVIEwControllervc.modalTransitionStyle = .Crossdissolve // 选择过渡效果vc.params = "参数传递" // 参数赋值self.presentVIEwController(vc,animated: true,completion: nil)    }}

3:返回参数

首先在需要接受返回值的VIEwController中,添加一个func(如下)

@IBAction func onClose(segue: UIStoryboardSegue) {    //同样也是暴力的强转...    let nav2 = segue.sourceVIEwController as! VIEwController2    print(nav2.backParam)}

其次在Storyboard中( *** 作如下):
选中需要返回的button,然后按住 control键,拖拽到exit图标处,放手后,会出现刚刚在上面的步骤中出现的方法.选中它,即可.

4:通过delegate返回参数
首先,定义个protocol,用来表示delegate

其次,在跳转的时候,为delegate 赋值.

VIEwController还需要实现这个Protocol

这样就完成了,delegate的参数返回传递.

至此: 文章就结束了,如有疑问: QQ群 AndroID:274306954 Swift:399799363 欢迎您的加入.

总结

以上是内存溢出为你收集整理的Swift-->UIViewController的跳转,参数传递,返回参数全部内容,希望文章能够帮你解决Swift-->UIViewController的跳转,参数传递,返回参数所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1073332.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-26
下一篇2022-05-26

发表评论

登录后才能评论

评论列表(0条)

    保存