#pragma mark - 超出响应
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event {
UIView *view = [super hitTest:point withEvent:event];
if (view == nil)
{
// 转换坐标系
CGPoint newPoint = [self.minView convertPoint:point fromView:self];
// 判断触摸点是否在button上
if (CGRectContainsPoint(self.minView.bounds, newPoint) && !self.isHidden)
{
return self.minView;
}
}
return [super hitTest:point withEvent:event];
}
iOS 关于子视图超出父视图后无法响应点击事件的处理办法
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 背景: 如上图红色区域1是父UIView,暂叫superView(就是下面代码中的self);黑色圆形2是子UIV...
- 问题演示 我们经常看到这样的app,它的tabBar上中间的按钮超出了tabBar的范围,但是我们在实际做的时候会...
- 如果在cell上添加了一个Tableview,但是tableview的范围超出了cell的frame。 此时你去点...
- -- iOS事件全面解析 概览 iPhone的成功很大一部分得益于它多点触摸的强大功能,乔布斯让人们认识到手机其实...