我知道对于传统的 UIView,我可以将“启用用户交互”标志设置为 NO,视图将不再响应触摸,让其下面的视图接收触摸。
是否有某种方法可以在 Sprite Kit 中实现相同的“点击通过”功能?到目前为止,我只看到人们使用“触摸开始”,了解要点并向场景询问此时的节点。
这种方法的问题是 - 如果我想在精灵之上添加叠加层(如怪物生命点等),它们也会响应触摸。到目前为止,我试图通过为不同节点创建自定义类,然后使用一个非常大的 if 语句来检查每个节点的类来避免此问题。
有没有更好的方法来实现精灵套件的“点击”功能?
如果您设置userInteractionEnabled
财产给YES
在子类 SKSpriteNode 上,然后触摸委托将在类内调用。因此,您可以在其类中处理精灵的触摸。
然而,默认情况下,userInteractionEnabled
属性设置为NO
。因此,默认情况下,精灵上的触摸是“点击”。
因此,对于您想要的覆盖,为精灵创建自定义类,实现touchesBegan:
和该类中的其他代表,并在初始化时设置userInteractionEnabled
财产给YES
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)