按钮在创建的时候,自带点击时的高亮效果,有时我们的项目需求是取消这种高亮的效果,所以在我们创建好按钮后,给按钮添加点击事件时,添加以下两种点击事件,
并且在 preventFlicker 方法中设置 button.highlighted = NO; 即可保证去除所有 button 的 touch 事件的高亮效果,代码如下:
[button addTarget:self action:@selector(settingViewButtonClick:) forControlEvents:UIControlEventTouchUpInside];
//保证所有touch事件button的highlighted属性为NO,即可去除高亮效果
[button addTarget:self action:@selector(preventFlicker:) forControlEvents:UIControlEventAllTouchEvents];
按钮点击事件的实现方法如下:
// 取消点击按钮时的高亮效果
- (void)preventFlicker:(UIButton *)button {
button.highlighted = NO;
}
-(void)settingViewButtonClick:(UIButton *)sender {
NSLog(@"%s",__func__);
}