按钮高亮底层实现

按钮被点击,系统会先调用setHighlighted设为YES
按钮松开,系统会先调用setHighlighted设为NO
验证:

- (void)setHighlighted:(BOOL)highlighted
{
    NSLog(@"%zd", highlighted);
    [super setHighlighted:highlighted];
}

系统判断按钮是否应该设为高亮根据isHighlighted
验证:

- (BOOL)isHighlighted
{
    return NO;
}

应用场景:不希望按钮有高亮状态,就重写setHighlighted但不调用super的方法设值,或重写isHighlighted返回NO

你可能感兴趣的:(按钮高亮底层实现)