Swift - 创建代理协议实现页面间参数传递和方法调用
发布时间:2020-12-14 07:14:47 所属栏目:百科 来源:网络整理
导读:在开发中,经常需要用到协议代理模式。比如,进入编辑页面修改数据后,将新数据回传到主界面。 下面通过一个样例来说明协议代理模式,功能如下: 1,主页面有一个标签和一个修改按钮,点击修改按钮会跳转到编辑页面 2,编辑页面中修改输入框的文字后,点击“
在开发中,经常需要用到协议代理模式。比如,进入编辑页面修改数据后,将新数据回传到主界面。
下面通过一个样例来说明协议代理模式,功能如下:
1,主页面有一个标签和一个修改按钮,点击修改按钮会跳转到编辑页面
2,编辑页面中修改输入框的文字后,点击“确定”则返回主页面,同时主页面的标签值会替换成新值
3,如果点击编辑页面的“取消”按钮则直接返回主页面
效果图如下:
实现过程:
1,首先在storyboard中绘制如下两个界面,同时将主界面的“修改”按钮与编辑页做present modally关联
2,设置这个关联Segue的Identity为 EditView
3,主界面ViewController.swift
4,编辑页 EditViewController.swift
5,编辑页代理 EditViewControllerDelegate.swift
6,在Storyboard中,将编辑页的Class设为EditViewController presentingViewController:The view controller that presented this view controller. (read-only),present出来本视图控制器的视图控制器 如A-->弹出B,则A.presentedViewController = B B.presentingViewController = A dismissViewControllerAnimated:YES Dismisses the view controller that was presented modally by the view controller. 也就是在在A上调该方法,dismiss掉A弹出的vc 如果在B上调,会调用presenting view的该方法,即A的该方法 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |