dispatch_block_t 简单的实现不带参数的回调函数

来源:互联网 发布:淘宝客服遇到的问题 编辑:程序博客网 时间:2024/05/24 06:06

通常我写一个不带参数的块回调函数是这样写的

在 . h 头文件中

定义类型

typedef void (^leftBlockAction)();

在定义一个回调函数

-(void)leftButtonAction:(leftBlockAction)leftBlock;

在.m 文件中

-(void)leftButtonAction:(leftBlockAction)leftBlock{

    leftBlock();

}


今天学会一个高大上的方法

只要在.h 头文件定义属性方法

@property (nonatomic,copy)dispatch_block_t leftBlockAction;


在.m文件 调用的方法里调用


    if (self.leftBlockAction) {

        self.leftBlockAction();

    }


在另个模块里直接

    MyAlertView *alert = [[MyAlertView alloc]init];

    alert.leftBlockAction = ^() {

        NSLog(@"left button clicked");

    };


是不是对第一种方法简单了很多
3 0
原创粉丝点击