我正在为场景创建一个SKNode,并在每个单独的SKNode上记录触摸事件。我可以想添加多少就添加多少,如果我触摸节点,并且只看到可见的节点,我就会看到日志消息。现在,如果我向以前的任何SKNode添加另一个SKNode,触摸区域将扩展为矩形,现在即使我在原始SKNode之外触摸,我也会看到日志消息。
第一张图片显示了SKNode的原始触摸区,第二张图片是向该SKNode添加子SKShapeNode后的新触摸区。要添加的SKShapeNode是20x20,因此它适合20x100的条形。
问题是我现在在触摸其他条时会得到多个触摸事件,因为它们是重叠的。有什么办法可以解决这个问题吗?


发布于 2015-07-03 20:27:06
您似乎对线条的每个角度都使用了单独的图形。相反,尝试使用相同的图形与您的线在0度,然后使用zRotation来角度它。我自己还没有试过,但我认为它会解决你的问题。
或者,尝试在touchesBegan方法中使用containsPoint进行触摸识别。您可以检查触摸是否在任何节点内,并相应地进行处理。
https://stackoverflow.com/questions/31195474
复制相似问题