[英]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是触摸点。
请不要因为框架和触摸位置是相对于其超级视图的,所以您需要将它们转换为应用程序窗口的坐标系。
也许它会更有帮助
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.