繁体   English   中英

入侵ios ui响应程序链

[英]hacking ios ui responder chain

我在处理触摸事件时遇到了棘手的问题。 这可能不是通常的东西,但我认为这是可能的。 我就是不知道

我有一个主视图(A)和主视图(B),其中有很多子视图1,2,3,4,5,...

MainView
 SubView(A)
   1
   2
   3
 SubView(B)
   1
   2
   3

这些子子视图中的一些(1,2,4)是滚动视图。

碰巧我想用两个手指在A和B之间切换。

我尝试将UIPanGestureRecognizer附加到MainView,但是滚动视图取消了触摸,并且它有时仅起作用。

我需要一种一致的方法来首先捕获触摸,检测它是否是两指平移,然后才确定它是否会将触摸向下(或向上...我不确定)通过响应者链。

我试图创建一个顶层视图来处理该问题,但是我无法通过该视图传递触摸。

我发现很多人都有类似的问题,但无法从他们的解决方案中找到解决此问题的方法。

如果有人能给我带来启示,那将是非常不错的,因为我已经对此感到绝望。

您可以创建一个顶层视图来捕获触摸和触摸的坐标,然后可以检查触摸的坐标是否在子视图的内部。 您可以使用

BOOL CGRectContainsPoint(CGRect rect, CGPoint point)

方法。 Rect是视图的框架,point是触摸点。

请不要因为框架和触摸位置是相对于其超级视图的,所以您需要将它们转换为应用程序窗口的坐标系。

也许它会更有帮助

同时在一个以上的UIView上接收触摸事件

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM