实现目标:在将一个子视图拖拽到顶部时,检测另一个子视图看看它们有没有重叠。应该怎么检测?
拖拽元素使用的是UIPanGestureRecognizer
,谢谢。
使用CGRectIntersectsRect()
实现:
if(CGRectIntersectsRect(firstSubview.frame, secondSubview.frame))
{
//collides, do your task here
}
只能是判断两个视图的位置中的点是否有重叠
如果判断一个CGRect 是否被另外一个包含可以使用 CGRectContainsRect() 函数. 如果判断两个CGRect是否相交 可以使用CGRectIntersectsRect();
你可以根据自己的需求选择适当的函数来判断.