首页 > 其他 > 详细

block心得

时间:2015-05-08 23:26:17      阅读:249      评论:0      收藏:0      [点我收藏+]

最近一直在搞项目,突然发觉用block特别是只掉一次的时候比代理好用多了,废话不多说block遍历数组

正序排序

NSArray *orginKeys = [[orginDictM1 allKeys] sortedArrayUsingComparator:^NSComparisonResult(id obj1, id obj2) {

        return [obj1 compare:obj2 options:NSNumericSearch];

    }];

下面说一下当参数传递

- (instancetype)initWithView:(UIView *)view completion:(void(^)(OrderPay *order, NSDictionary *result, BOOL success))completion{

    if (self = [super init]) {

        completion(self, nil, YES);

    }

    return self;

}

如果是在这个方法里执行就可以直接调用block,

但是如果要在别的函数里调用这个block呢,让我搞了半天才知道,要引用一下,但是想到引用用什么好呢,这又让我困惑了

typedef void(^OrderBlock)(OrderPay *order, NSDictionary *result, BOOL success);

@property (nonatomic, copy) OrderBlock orderBlock;

- (instancetype)initWithView:(UIView *)view completion:(void(^)(OrderPay *order, NSDictionary *result, BOOL success))completion{

    if (self = [super init]) {

       self.orderBlock = completion;

    }

    return self;

}

这样就好了,如果方法不在本函数里面执行一定要引用一下,到你用的函数里面执行就可以了

 

block心得

原文:http://www.cnblogs.com/dream999/p/4489095.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!