**局部变量
**:
returnType (^blockName)(parameterTypes) = ^returnType(parameters) {...};
void (^blockName)(NSInteger x) = ^void(NSInteger x){
};
**声明
**:
@property (nonatomic, copy) returnType (^blockName)(parameterTypes);
@property(nonatomic,copy)void (^textBlock)(NSInteger idx);
**方法中的参数
**:
- (void)someMethodThatTakesABlock:(returnType (^nullability)(parameterTypes))blockName;
- (void)requestForURlXXSuccess:(void(^)(NSDictionary * resultDic))sucess error:(void(^)(NSError * error))error;
**回调
**:
[someObject someMethodThatTakesABlock:^returnType (parameters) {...}];
[self requestForURlXXSuccess:^(NSDictionary *resultDic) {
//成功
} error:^(NSError *error) {
//失败
}];
**typedef
**:
typedef returnType (^TypeName)(parameterTypes);TypeName blockName = ^returnType(parameters) {...};
ex:
typedef void(^TextBlock)(NSInteger x);
@interface ViewController : UIViewController
@property(nonatomic,copy)TextBlock blcok;
网友评论