iOS 事件不响应的几种情况

实际开发中我们有时候会遇到,UIButton 或者其它视图 明明添加了点击事件,但是总是无法捕捉响应事件的现象。目前总结到以下几种情况:
1:视图或者父视图交互属性没打开, 检查 isUserInteractionEnabled = true 是否有设置

2:子视图是否有相同事件,造成了事件拦截。 比如 给 cell 上的 子视图 添加了点击事件,则在 子视图区域 点击时优先响应 子视图的 点击事件,而不会触发 didSelected 回调。参考 事件传递机制 :https://www.jianshu.com/p/410ca78faa98

3:子视图的大小是否超出了 其 父视图。 在超出父视图的部分将无法响应子视图的 交互事件。(同理 注意检查父视图是否 正确设置了 frame)

4:当前视图的 对应属性是否开启,比如 UIButton 中的 isSelected ,scrollView 中的 isScrollView 等

你可能感兴趣的:(iOS 事件不响应的几种情况)