iOS中两个界面之间的传值(代理,Block)

一、正向传值
1、 记得在被传入值的文件中声明一个公开的属性用于接收传过来的值
2、在适当的时机把要传过去的值赋给这个公开的属性,一般在推出这个界面的方法中
3、把公开属性的值赋予需要用的地方
二、反向传值
1、代理模式
1)委托方
a.定义公开的协议
要点: 1)协议名称:类名+Delegate
2)方法的第一个参数一定是委托方自己
3)方法名尽量体现发消息的时机
b.声明一个公开的delegate属性
c.在适当的时机给代理发消息
.h文件中

Paste_Image.png

.m文件中

Paste_Image.png

2)代理方
a.遵守协议
b.将自己设为代理方
c.实现代理方法
.m文件中

Paste_Image.png
 2、代码块
      1)界面二(要传值的控制器)

.h文件中

Paste_Image.png

a.先定义声明一个公开的Block属性
(第一行代码为定义的block重新定义一个名字returnValueBlock,这样在下面使用的时候方便
第三行声明一个block属性
第四行是一个block语句块的函数,这样在界面一中用起来会很方便)
b.实现block语句块函数
c.寻找合适的时机把需要传入的值赋值给block中
.m文件中

Paste_Image.png

2)界面一(要展示的控制器)
导入界面二的控制器
.m文件中

Paste_Image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容