Overlaying a UIScrollview without cutting off touch events to the scrollview
I have a transparent overlay that I'd like to put over a UIScrollview. I'm开发者_StackOverflow中文版 adding it as an Imageview sibling view to the scrollview so that it remains stationary while the scrollview subviews move freely underneath. The problem is that views pass their events to the superview, not the siblings. IS there a way to pass events from this overlay to the scrollview? Or can anyone think of a better way to achieve the same effect? Thanks!
This should Just Work, as long as the UIImageView
has its userInteractionEnabled
property set to NO
: the superview sends -hitTests:withEvent:
to its subviews in order, and the UIImageView
should return nil
, whereas the UIScrollView
should return itself (because it has gesture recognizers).
If it's not working for you, the chances are that your view layout is not what you think it is. UIView
has a useful method called -recursiveDescription
which you should call on the superview and NSLog the result.
精彩评论