设置视图为第一响应

很久没遇到了 , 分享一下

出问题的地方 , (self ==> 一个view , 里面的btn有点击事件)

UIWindow* window = [UIApplication sharedApplication].windows[0];

[window addSubview:self];

将一个view添加到window上 , 在点击这个view(蒙板之类的)时 , 却在触发其他view的点击事件 , 不管是滑动和点击 , 都在触发其他view😆

那就只响应我要的那个view好了 , 在绘制这个view的.m里重写这个方法 , eg: XXView.m下实现

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

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

[super hitTest:point withEvent:event];

CGPoint btn_P = [self.updateBtn convertPoint:point fromView:self];

if ([self.gcBtn pointInside:btn_P withEvent:event]) { // 你懂得

return self.gcBtn;

}

return self;//(只针对self处理响应)

}

搞定

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容