Block实例------用Block代替delegate来传递值

来源:互联网 发布:赤城县公安局网络科 编辑:程序博客网 时间:2024/06/07 00:30

如果两个试图只是简单的1对1传值的话可以用Block代替delegate,使用简单。

@implementation NSObject(ZXObject)中

 

const char ZXObjectSingleObjectEvent;

 

-(void)receiveObject:(void(^)(id object))sendObject

 

{

 

    objc_setAssociatedObject(self,

 

                             &ZXObjectSingleObjectEvent,

 

                             sendObject,

 

                             OBJC_ASSOCIATION_RETAIN);

 

}

 

-(void)sendObject:(id)object

 

{

 

    void(^block)(id object) = objc_getAssociatedObject(self,&ZXObjectSingleObjectEvent);

 

    if(block != nil) block(object);

 

}

 

 

 

 

 

 

 source:https://github.com/zhangxigithub/BlockUI

 http://justsee.iteye.com/

 

 

 

 

 

 

 

 

 

 

  • BlockUI-master.zip (26.4 KB)
  • 下载次数: 0
  • Demo.zip (43.9 KB)
  • 下载次数: 4