答案 0 :(得分:2)
您可以使用CGRect
程序来完成您想要的任务。只需检查CGRectIntersectsRect( rect1, rect2)
,其中rect1
是第一个视图的框架,rect2
是第二个视图的框架。祝你好运!
答案 1 :(得分:0)
如果View 1垂直向下,那么很容易通过检查.x轴来判断它们是否会相交,当然还会增加宽度。
基本上我们会检查2个案例,如果 View2.x< = View1.x + View1.width< = View2.x + View2.width
Swift示例:
let view1TotalWidth = View1.frame.origin.x + View1.frame.size.width
let view2TotalWidth = View2.frame.origin.x + View2.frame.size.width
if View2.frame.origin.x <= view1TotalWidth && view1TotalWidth <= view2TotalWidth {
print("They will intersect")
}
现在我们需要检查第二种情况,当正确的点(我们上面检查过的)现在超出了view2TotalWidth,这基本上几乎相同:
View2.x&lt; = View1.x&lt; = View2.x + View2.width
同样,答案是假设view1将从他当前的起始位置垂直下拉。