Ios 如何检测一个节点悬停在另一个节点上?

Ios 如何检测一个节点悬停在另一个节点上?,ios,swift,sprite-kit,Ios,Swift,Sprite Kit,我正在做一个游戏,我把碎片拖到容器上,如果它们匹配就可以放在容器上,如果不匹配就可以放在容器上,然后返回到容器,我如何检测sknode是否在容器上悬停,或者我如何比较这两个精灵?非常感谢。任何帮助都太好了!:) 要查看它们是否在彼此上方悬停,您可以使用CGRect的intersects功能,使用每个节点frame属性(这是一个CGRect)。如果帧相交,则它们在某种程度上重叠 为了确定节点是否是相同的形状,我将自己限制在特定的形状范围内,并让节点name属性反映它是什么形状 编辑:您当然也可以使

我正在做一个游戏,我把碎片拖到容器上,如果它们匹配就可以放在容器上,如果不匹配就可以放在容器上,然后返回到容器,我如何检测sknode是否在容器上悬停,或者我如何比较这两个精灵?非常感谢。任何帮助都太好了!:)

要查看它们是否在彼此上方悬停,您可以使用
CGRect
intersects
功能,使用每个节点
frame
属性(这是一个CGRect)。如果帧相交,则它们在某种程度上重叠

为了确定节点是否是相同的形状,我将自己限制在特定的形状范围内,并让节点
name
属性反映它是什么形状


编辑:您当然也可以使用Sprite kit的联系人检测。正确设置它,您就可以使用它;只有在将正确的形状放置在正确的容器上时,才会收到通知。

SKNode有自己的相交功能frame intersect不是一种很好的检查方法,如果两个节点位于两个不同的分支上,它们的帧可能会导致错误的相交,因为frame中的值与父节点相关