Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/115.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
精灵套件可访问iOS 9.2中的子节点_Ios_Swift_Sprite Kit_Skspritenode - Fatal编程技术网

精灵套件可访问iOS 9.2中的子节点

精灵套件可访问iOS 9.2中的子节点,ios,swift,sprite-kit,skspritenode,Ios,Swift,Sprite Kit,Skspritenode,我需要访问SKSpriteNode的子节点。 在iOS 9.1中,我曾经这样做: let node = nodeAtPoint(touchLocation) If let myNode = node as? MyNode { //some code if node is kind of class 它工作得很好,但在iOS 9.2中却不行。有人知道是怎么回事吗?要访问SKNode的子节点,请访问只读的“children”参数(请参阅) 我怀疑iOS 9.1到9.2的变化有误导性。nodeAt

我需要访问
SKSpriteNode
的子节点。 在iOS 9.1中,我曾经这样做:

let node = nodeAtPoint(touchLocation)

If let myNode = node as? MyNode {
//some code if node is kind of class

它工作得很好,但在iOS 9.2中却不行。有人知道是怎么回事吗?

要访问SKNode的子节点,请访问只读的“children”参数(请参阅)


我怀疑iOS 9.1到9.2的变化有误导性。nodeAtPoint只会返回一个子类,如果它恰好也位于该点上,则不管它的子类是什么。如果存在多个节点,则选择“deapest”,然后选择“最大z”(如果所有节点都具有相同的z,则返回的值可能是任意的)。如果该点不存在节点,则返回接收器。因此,它返回的内容是高度可变的,这取决于调用它时的场景-因此,它可能在从未真正按照您的想法进行操作的情况下似乎仍在工作?

它是如何工作的您是否收到错误?
如果让
一起作为不工作,我错了,代码是如果让myNode=node为?MyNode{//一些代码如果node是类,但它无论如何都不工作没有错误,它只是无法识别node是类的类型。您是否尝试打印该节点以查看它是什么?
print(node)
是否确定该节点是MyNode的成员?可能它正在拉入父节点,并且您的zorder需要修复