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