我在同一个UIViews
中有几个superview
。一个在顶部的视图我希望能够在屏幕上拖动,同时它下方的多个UIViews
在它们经过它们时作出反应(底部的视图不重叠)。现在,我有一个draggable-view使用委托协议向我的UIViewController
发送触摸事件,这是我想要做所有逻辑的地方。
基本上,我希望能够在视图控制器中找到我的可拖动视图当前的视图。有没有简单的方法呢?
答案 0 :(得分:1)
您可以通过遍历self.view(或主视图)的子视图数组来获取所有视图的帧。然后,您可以进行测试以查看特定点是否位于其中一个视图中,或者是否存在拖动视图的当前帧与任何其他帧的交集。
有一种方便的方法可以让你这样做:CGRectIntersectsRect(r1,r2)。
答案 1 :(得分:0)
您需要获取视图的帧并查看它们是否相交。这里的示例代码有一个类似的问题Detecting if UIView is intersecting other UIViews