iOS:未识别子视图的手势

Rya*_*Dao 2 iphone uiview ipad uigesturerecognizer ios

我有一个UIScrollView作为我的根视图,一个UIImageView(让我们称之为父视图)作为根视图的子视图.然后我添加另一个UIImageView(lat的称之为子视图)作为父视图的子视图.子视图不包含在父视图的边界中.这是我的视图布局的直观表示.

................................
.       root view              .
.                  .........   .
.  ..............  . child .   .
.  .parent view .  . view  .   .
.  ..............  .........   .
.                              .
................................
Run Code Online (Sandbox Code Playgroud)

现在,当我向子视图添加UIPanGestureRecognizer时,无法识别手势.我检查了userInteractionEnabled和所有内容.当我将子视图设置为根视图的子视图时,可以正确识别手势.有谁知道是什么原因引起这个问题?

hel*_*imi 5

我认为这个问题是因为你UIGestureRecognizer在父母范围内添加了一个不可见的东西.如果clipsToBounds = YESparentView设置,则不显示childView,对吧?这就是它的处理方式.你可能会看到它,但"它不存在".

就像这样:你在厨房里,你可以听到客厅里的电视,你知道它就在那里,但是你看不到它.另一方面,如果墙壁不可见,你可以看到它,但你无法与之互动.因为你不能穿过墙壁.

希望这对任何帮助.