跨类的通讯,可以使用Notification,也可以使用Event。这里记录一下实现Event的方法:
首先,定义的类要从UIControl继承。
#import <UIKit/UIKit.h>
#import "AsyncSocket.h"
@interface SocketUtils : UIControl{
}
enum {
UIControlEventAlert=0x00000001<<25, //可以自定义的从24 到27
UIControlEventError=0x00000001<<26
};
触发事件的方法:
[self sendActionsForControlEvents:UIControlEventAlert];
#import <UIKit/UIKit.h>
#import "WasherSocketUtils.h"
@interface Head : UIView
@property (nonatomic,strong)SocketUtils* SocketUtils;
#import "Head.h"
@implementation Head
@synthesize SocketUtils=_SocketUtils;
-(id)init{
_SocketUtils=[[SocketUtils alloc]init];
///注册事件,这句是关键
[_SocketUtils addTarget:self action:@selector(socketEvent:) forControlEvents:UIControlEventAlert];
return [super init];
}
-(void)socketEvent:(SocketUtils*)paramSender{
NSLog(@"event by xie:%@",paramSender);
}
原文地址:http://blog.csdn.net/xundh/article/details/46348519