iOS 开发继续加油OC学习iOS开发资源

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

2016-01-11  本文已影响8055人  Wind_Wang

一、正向传值
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
上一篇下一篇

猜你喜欢

热点阅读