This problem is UIButton with Tableviewcell synchronous use of a bug, not the delay a bit of Mao, the evidence is click the event no problem, so, found a way to solve the problem. UIButton classification
Symbian2+ios4 15:51:46
Sub-class
@implementation Mybutton
/*
Only override Drawrect:if perform custom drawing.
An empty implementation adversely affects performance during animation.
-(void) DrawRect: (cgrect) Rect {
Drawing Code
}
*/
-(void) Touchesbegan: (Nsset *) touches withevent: (Uievent *) event
{
[Super Touchesbegan:touches Withevent:event];
[Nsoperationqueue.mainqueue addoperationwithblock:^{self.highlighted = YES;}];
}
-(void) touchescancelled: (Nsset *) touches withevent: (Uievent *) event
{
[Super Touchescancelled:touches Withevent:event];
[Self performselector: @selector (SetDefault) Withobject:nil afterdelay:0.1];
}
-(void) touchesended: (Nsset *) touches withevent: (Uievent *) event
{
[Super Touchesended:touches Withevent:event];
[Self performselector: @selector (SetDefault) Withobject:nil afterdelay:0.1];
}
-(void) SetDefault
{
[Nsoperationqueue.mainqueue addoperationwithblock:^{self.highlighted = NO;}]
It's a bug that UIButton and Tableviewcell sync.