移动开发 \ iOS \ JKUIHelper之hitTest实现按钮扩大热区

JKUIHelper之hitTest实现按钮扩大热区

总点击13
简介:原文地址:http://blog.csdn.net/hanhailong18/article/details/78994971   在iOS开发的过程中经常会遇到绘制完按钮后,需要为为为按钮扩大可点击区域的情况,由于图标已经按照UI的尺寸进行了相关的锁紧操作了,如

原文地址:http://blog.csdn.net/hanhailong18/article/details/78994971


   在iOS开发的过程中经常会遇到绘制完按钮后,需要为为为按钮扩大可点击区域的情况,由于图标已经按照UI的尺寸进行了相关的锁紧操作了,如果通过扩大按钮的rect来实现扩大按钮的可点击区域的话,又要重新调整布局。影响大,也比较麻烦。如果这样的情况多的话。很是浪费时间。为了解决这个问题。我这里主要通过hitTest响应链的机制对UIView的下面的这个方法进行重写来实现的。

- (BOOL)pointInside:(CGPoint)point withEvent:(UIEvent *)event

{

CGRect bounds = self.bounds;

bounds = CGRectInset(bounds,-self.clickExtendX,-self.clickExtendY);

return CGRectContainsPoint(bounds,point);

}

其中self.clickExtendX,clickExtendY分别是按钮扩大的热区的宽度和高度。我这里默认是self.clickExtendX=20,self.clickExtendY=20,大家使用的时候可以继承这个JKHitTestButton类就好了。只需设置热区扩展的宽度和高度就OK了。


demo代码下载地址:


https://github.com/xindizhiyin2014/JKUIHelper

意见反馈 常见问题 官方微信 返回顶部