Swift - 纯代码实现页面segue跳转,以及参数传递

Swift - 纯代码实现页面segue跳转,以及参数传递,第1张

概述下面通过一个例子说明如何在代码中进行segue页面的切换,以及参数传递。 样例功能如下: 1,主界面中是一个列表(这个列表是在代码中实现) 2,点击列表项时,界面会切换到详情页面,同时传递改列表项的值到详细页面。 效果图如下:   实现步骤: 1,在storyboard中拖入一个新的ViewController用做详情页面,同时创建一个继承ViewController的新类DetailViewC 下面通过一个例子说明如何在代码中进行segue页面的切换,以及参数的传递。
样例功能如下: 1,主界面中是一个列表(这个列表是在代码中实现) 2,点击列表项时,界面会切换到详情页面,同时传递改列表项的值到详细页面。 效果图如下:
实现步骤: 1,在storyboard中拖入一个新的VIEwController用做详情页面,同时创建一个继承VIEwController的新类DetailVIEwController。并将其与storyboard中新建的详情页面进行视图与控制器的绑定。
2,在storyboard中,选中详情页面,通过最上方的Detail VIEw Controller拖拽到主页面进行segue关联(show detail) (右键点击 Detail VIEw Controller 头部黄色的标志,在出现的菜单中选择“show detail”旁边的圆圈,在圆圈上按住左键拖动到主页面) 关联后如下: 3,选中关联线,设置segue的IDentifIEr属性为“ShowDetailVIEw”

4,主界面代码 VIEwController.swift
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 @H_403_167@ 56 57 58 59 60 61 62 63 64 65 66 67 import UIKit class VIEwController : UIVIEwController , UItableVIEwDelegate UItableVIEwDataSource { var ctrlnames:[ String ] = [ "任务1" "任务2" "任务3" ] tableVIEw: UItableVIEw ? overrIDe func loadVIEw() { super .loadVIEw() } vIEwDIDLoad() { .vIEwDIDLoad() @H_419_279@ //创建表视图 self .tableVIEw = (frame: .vIEw.frame,style: UItableVIEwStyle . Plain ) @H_778_301@.tableVIEw!.delegate = self .tableVIEw!.dataSource = self //创建一个重用的单元格 .tableVIEw!.registerClass( UItableVIEwCell . "cell1" ) .vIEw.addSubvIEw( .tableVIEw!) } //在本例中,只有一个分区 numberOfSectionsIntableVIEw(tableVIEw: ) -> Int { return 1; } //返回表格行数(也就是返回控件数) tableVIEw(tableVIEw: { return .ctrlnames.count } //创建各单元显示内容(创建参数indexPath指定的单元) NSIndexPath ) -> UItableVIEwCell { //为了提供表格显示性能,已创建完成的单元需重复使用 let IDentify: = "cell1" //同一形式的单元格重复使用,在声明时已注册 cell = tableVIEw.dequeueReusableCellWithIDentifIEr(IDentify, forIndexPath: indexPath) as UItableVIEwCell cell.accessoryType = UItableVIEwCellAccessoryType disclosureIndicator cell.textLabel?.text = .ctrlnames[indexPath.row] cell } // UItableVIEwDelegate 方法,处理列表项的选中事件 ) { .tableVIEw!.deselectRowAtIndexPath(indexPath,animated: true ) itemString = .ctrlnames[indexPath.row] .performSegueWithIDentifIEr( "ShowDetailVIEw" UIStoryboardSegue AnyObject ?) { if segue.IDentifIEr == { controller = segue.destinationVIEwController as ! DetailVIEwController controller.itemString = sender ? String } } dIDReceiveMemoryWarning() { .dIDReceiveMemoryWarning() } }

5,详情页面代码 DetailVIEwController.swift 18
DetailVIEwController itemString: ? @IBOutlet weak textFIEld: UITextFIEld ! vIEwDIDLoad() { .vIEwDIDLoad() textFIEld.text = itemString } dIDReceiveMemoryWarning() { @H_778_301@.dIDReceiveMemoryWarning() } 原文出自: www.hangge.com 转载请保留原文链接: http://www.hangge.com/blog/cache/detail_720.html 总结

以上是内存溢出为你收集整理的Swift - 纯代码实现页面segue跳转,以及参数传递全部内容,希望文章能够帮你解决Swift - 纯代码实现页面segue跳转,以及参数传递所遇到的程序开发问题。

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

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

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

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

发表评论

登录后才能评论

评论列表(0条)