实例如下,_deleteButton 在当前UIView中超出一半显示在UIView之外,需要点击超出的部分也响应,点击时判断点击的point是否在_deleteButton.frame范围内即可
1.第一步在父控件中重写方法
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event
{
UIView *viewReturn =[super hitTest:point withEvent:event];
BOOL exist = CGRectContainsPoint(_deleteButton.frame, point);
if (exist == YES)
{
return _deleteButton;
}
return viewReturn;
}
//扩展.如果一个按钮很小,需要扩大点击范围,也可用类似方法.只需要将_deleteButton.frame的范围扩大些即可
网友评论