经常会遇到这种情况,有些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;
}
然后你就可以测试了
当视图复杂时,上面的写法可能有点问题,改成下面的写法