This could be accomplished by:
- Letting UITextView handle the touch events as suggested in How to ignore touch events and pass them to another subview's UIControl objects?
- In the hitTest of UIView save the reference to the view in which it occurred so that it could be used later
- Add a custom double tap gesture recognizer, that checks if the hitTest reference is not null, indicating that the double tap happened on the target view and forward the event to that view. If not, fail the gesture recognizer. To fail the gesture recognizer you need to include UIKit/UIGestureRecognizerSubclass.h and set the state property to UIGestureRecognizerStateFailed
- Add the gesture recognizer to the UITextView
- Extend the UITextView to override the gestureRecognizers getter and loop through the gesture recognizers to require the custom gesture to fail. This has to be done in the getter as the gesturerecognizers seem to get reset often