我最初设置了一些条件,使用cgrittersectsrect进行一些碰撞检测,效果很好。在更大的范围内,我只需要检测部分视图。
所以最初在视图控制器中,它比较两个ui视图。
现在我需要做的是在视图控制器执行逻辑的视图中包含的两个不同的ui视图中碰撞检测子视图。
我的脚本不再工作,因为我怀疑cgrittersectsrect只比较同一视图中的帧?我会继续挖掘以证实这一点。
有办法解决这个问题吗?例如,是否可以获得子视图相对于执行逻辑的主视图的X和Y位置?
您需要使用uiview的 convertRect:toView: 或 convertRect:fromView: (或点等价物)使它们在同一坐标空间中。
convertRect:toView:
convertRect:fromView: