如何关闭子节点的交互?
我正在为一堆精灵添加标签,描述它们是什么。这些精灵本身是可触摸的,并且有响应touchesBegun等的代码。
这些标签在视觉上不重叠精灵,它们完全位于Sprites的视觉表示下方,但它们是各自Sprite的子节点,我想保持这样。
但我不希望标签对触摸做出响应。
我将标签设置为:
myLabel.isUserInteractionEnabled = false
但这并没有什么区别,它们仍然像Sprite一样对触摸作出响应。
如何关闭子节点的交互?
我正在为一堆精灵添加标签,描述它们是什么。这些精灵本身是可触摸的,并且有响应touchesBegun等的代码。
这些标签在视觉上不重叠精灵,它们完全位于Sprites的视觉表示下方,但它们是各自Sprite的子节点,我想保持这样。
但我不希望标签对触摸做出响应。
我将标签设置为:
myLabel.isUserInteractionEnabled = false
isUserInteractionEnabled
是 false,因此对于像 SKLabelNode
这样的子节点上的触摸事件,默认情况下只是简单地传递给主类(或父类)处理(该对象存在,但如果您不实现任何操作,则只是触摸它)。SKNode
上设置 userInteractionEnabled
属性为true,则触摸委托将在此特定类中被调用。因此,您可以在其类内部处理标签(如您的情况)的触摸事件。
label.isPaused = true
。不知道它是否有效,但我觉得它可能会有所作用... - Nik