UIButton 扩大点击区域

经常会遇到这种情况,有些app的删除或着其他按钮看上去很小,但是你点击的时候却是可以点击到它。这里介绍一个小技巧来实现这个功能,就是重写button的hitTest方法,扩大button的点击范围即可,做法就是自定义一个Button,然后在.m里重写即可,做法如下

下面是将button的点击区域向两侧扩展了20 point大小

- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event

{

    CGFloat margin =20;

    CGRect hitRect =CGRectMake(0 - margin,0 - margin, self.bounds.size.width + 2 * margin, self.bounds.size.height + 2 * margin);

    returnCGRectContainsPoint(hitRect, point) ?self : nil;

}


然后你就可以测试了

当视图复杂时,上面的写法可能有点问题,改成下面的写法

你可能感兴趣的:(iOS,小知识)