# 代理(顺传 逆传)和 block
##顺传 A让B做事情
>1.在B的.h文件声明 属性 或 方法
>2.在B中实现方法
>3.在A中调用 该方法
#逆传———代理
>1.写 协议。循环引用头文件
>2.写 协议方法,要做什么事件
>3.写 id 协议属性,delegate
>4.在哪里调用代理方法。(.m文件中)
1.判断 响应代理方法
2.调用代理方法
>5.在哪里使用就实现代理方法
1.遵守协议
2.设置自己为代理
3.实现代理方法
#逆传——block
>1.写 block属性 (返回值(^block名)(参数类型,参数类型))
###### void(^myBlock)(NSString*,……);
>2.在哪里执行block(.m文件中)
##### 判断,执行block方法
if(self.myBlock){
self.myBlock(str参数值);
};
>3.在哪里给block赋值
##### 调用的地方
my.myBlock = ^(NSString* strrrr一个名字){
*要做的事情*
NSLog(%@,strrrr);
};