iOS block=写法总结(如block的参数是一个block

2018-05-11  本文已影响32人  帅气的阿斌

一、block作为属性声明

1、typedef声明block名称

typedef id(^Block_Name)(id arg1, id arg2);

@property (nonatomic, copy) Block_Name block;

2、直接书写

@property (nonatomic, copy) id(^Block_Name)(id arg1, id arg2);

注:这里的第一个加粗的id不要添加括号,会报错

3、属性为block并且block的参数为block类型的,请使用typedef声明表示参数,如下:

@property (nonatomic, copy) id(^Block_Name)(Block_Name arg1, Block_Name arg2);

二、block作为方法中的参数(!这个要和作为block中的参数作区别)

- (void)method:(id(^)(id arg1,id arg2))argBlock;

这里只要注意block名前面需要用()把 id(^)(id arg1, id arg2)包住即可,同样第一个id不要加括号

上一篇 下一篇

猜你喜欢

热点阅读