title: How do I enable user interaction on child elements but ignore user interaction on the parent?
body: <p>In the following diagram, S, P, C's are all subclasses of UIView. C's are children of P. P is a child of S. I want S and C's to respond to touches, but I want P to ignore all touches and propagate them to S.</p>
  
  <pre><code> _____________________
  | S                  |
  |  ______________    |
  | | P            |   |
  | |              |   |
  | |  ___         |   |
  | | |   |        |   |
  | | | C |        |   |
  | | |___|   ___  |   |
  | |        |   | |   |
  | |        | C | |   |
  | |        |___| |   |
  | |______________|   |
  |____________________|
  </code></pre>
  
  <p>I can't just do <code>p.userInteractionEnabled = NO</code> because that would disable C's as well.</p>
  
  <p>If you are wondering why I need to do this, I want to have a structure similar to Facebook chat heads. The avatars, close button, and comment blurbs can be my C's. They can all be wrapped in a P, which has a transparent background and takes up the whole screen. P is the main view of a UIViewController that only handles chatting logic. Let's say the user tries to tap the Like button (owned by S). Then P should not block that tap - it should let S handle it.</p>
  
  <p><img src="https://i.stack.imgur.com/wWVzX.jpg" alt="enter image description here"></p>