如何确定两个UIImageViews是否相互接触?我试图让它意识到他们已经相互接触,然后在里面添加一些代码,如果他们这样做了。
希望有人能帮忙,谢谢!
我已经试过了
if (newArea.frame.intersects(yolo.frame)) {
print("ok")
}
您可以
检查UIImageViews
是否像这样重叠:
if img1.bounds.contains(img2.bounds)
{
print("overlapped")
}
在不依赖于视图层次结构的情况下执行此操作的正确方法是使用 convertRect
。
let r1 = newArea.superview.convert(newArea.frame, to: nil)
let r2 = yolo.superview.convert(yolo.frame, to: nil)
if r1.intersects(r2) { stuff() }
这会将两个帧转换为屏幕坐标,然后在它们成为超级视图的本地坐标之前检查交集。