我对触摸处理的理解是,当一个视图被触摸时,如果它本身不处理触摸,它会“处理”视图层次结构的触摸,直到它们被处理,或者你在顶部并且它们被丢弃. (本质上,它是递归;它将触摸传递给它们的子视图,此时调用相同的“向上”方向函数将其向上传递)。
我处于一个奇怪的情况,一个 UIScrollView - 应该拦截并处理来自它的孩子的任何和所有触摸 - 似乎正在拦截放置在它“顶部”的 UIImageView 的触摸。删除滚动视图,触摸工作正常。问题是,有问题的 UIImageView 不是 UIScrollView 的子项;这是一个兄弟姐妹。
所以我的问题变成了双重的:首先,我如何阻止它“窃取”这些触摸,第二,它怎么会首先窃取它们?