iOS面试题:事件传递链,页面上一个按钮,按钮和它的superView有一样的action,为什么只执行button的action?

  • hitTest方法:首先会通过调用自身的 pointInside 方法判断用户触摸的点是否在当前对象的响应范围内,如果 pointInside 方法返回 NO hitTest方法直接返回 nil
  • 如果 pointInside 方法返回 YES hitTest方法接着会判断自身是否有子视图.如果有则调用顶层子视图的 hitTest 方法 直到有子视图返回 View
  • 如果所有子视图都返回 nil hitTest 方法返回自身.

更多:iOS面试题合集

你可能感兴趣的:(iOS面试题:事件传递链,页面上一个按钮,按钮和它的superView有一样的action,为什么只执行button的action?)