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

来源:互联网 发布:ubuntu 中科大源 编辑:程序博客网 时间:2024/05/14 03:25

http://blog.csdn.net/lengshengren/article/details/43410589


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

在 . h 头文件中

定义类型

typedef void (^leftBlockAction)();

在定义一个回调函数

-(void)leftButtonAction:(leftBlockAction)leftBlock;

在.m 文件中

-(void)leftButtonAction:(leftBlockAction)leftBlock{

    leftBlock();

}


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

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

@property (nonatomic,copydispatch_block_t leftBlockAction;


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


    if (self.leftBlockAction) {

        self.leftBlockAction();

    }


在另个模块里直接

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

    alert.leftBlockAction = ^() {

        NSLog(@"left button clicked");

    };


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