- (void)handleClickCallBack:(ButtonClickCallback)callBack {
[self handleClickEvent:UIControlEventTouchUpInside callBack:callBack];
}
- (void)handleClickEvent:(UIControlEvents)aEvent
callBack:(ButtonClickCallback)callBack;
{
objc_setAssociatedObject(self, &overViewKey, callBack, OBJC_ASSOCIATION_COPY_NONATOMIC);
[self addTarget:self action:@selector(buttonClick) forControlEvents:aEvent];
}
- (void)buttonClick {
ButtonClickCallback callBack = objc_getAssociatedObject(self, &overViewKey);
if (callBack!= nil)
{
callBack(self);
}
}