title: How to not allow a circular UIView to recognize touches outside of it's circular bounds?
body: <p>I have two views stacked on-top of each other. Let's say view B is stacked on-top of a larger view A. View B is circular and should not accept touches outside of circle instead the larger view A should accept the touches.</p>
  
  <p>I've tried overriding the touchesBegan method of a custom PanGesture recognizer of view B to check if it's with-in the circular path and then call touches cancelled on the recognizers super like this:</p>
  
  <pre><code>override func touchesBegan(touches: NSSet!, withEvent event: UIEvent!) {
      let touch = touches.anyObject() as UITouch
      let location = touch.locationInView(self.view)
      let isInPath = self.path.containsPoint(location)
  
      if(isInPath){
          super.touchesBegan(touches, withEvent: event)
          self.rotation = rotationForLocation(location)
      }else{
          // touch started outside of path so cancel touch
          super.cancelsTouchesInView = true
          super.touchesCancelled(touches, withEvent: event)
      }
  }
  </code></pre>
  
  <p>It prevents view B from accepting the touches outside of the circular path, but view A does not accept the touches. Any help would be much appreciated, thanks. </p>