QHP_18代理(逆传)与Block传值

1.声明协议,需要注意的地方,在.h文件中导入项目的头文件用@class;声明协议协议名称一般是类名+Delegate;声明协议的方法一般是可选的用@optional

QHP_18代理(逆传)与Block传值_第1张图片

2.声明一个代理属性

3.在成为代理的.m文件中写上遵守协议

4.设置代理人

QHP_18代理(逆传)与Block传值_第2张图片

5.告诉代理做什么事情


指定代理人,告诉代理人监听这个+号的按钮事件,并且把这个Model传给了代理

6.代理执行方法


小知识点,用懒加载的时候数据记的初始化的正确位置

QHP_18代理(逆传)与Block传值_第3张图片
QHP_18代理(逆传)与Block传值_第4张图片

下面是Block传值,实现相同的传值效果在Add.h文件中,定义block

QHP_18代理(逆传)与Block传值_第5张图片
注意block不是对象,但是可以当成对象使用,所以第二个标记中的block不加*

在Add.m中用到block的时候调用,下面图片是block的点击方法

QHP_18代理(逆传)与Block传值_第6张图片

在Contact.m中跳转的时候写代码

QHP_18代理(逆传)与Block传值_第7张图片
利用block传值,需要把什么传递出去,就作为block的参数

你可能感兴趣的:(QHP_18代理(逆传)与Block传值)