EnumerateChildNodesWithName中的多个子节点

Jar*_*ron 4 xcode nodes removechild sprite-kit swift

我正在使用enumerateChildNodesWithName删除和添加节点.我想知道是否有一种方法可以使用带有多个名称的enumerateChildNodesWithName.例如,目前我正在使用以下内容:

    nodeBase.enumerateChildNodesWithName("ground", usingBlock: {
        node, stop in
        if node.position.x + positionX < -self.frame.size.width/2 - sizeSegmentWidth/2 {
            node.removeFromParent()
        }
    })

    nodeBase.enumerateChildNodesWithName("obstacle", usingBlock: {
        node, stop in
        if node.position.x + positionX < -self.frame.size.width/2 - sizeSegmentWidth/2 {
            node.removeFromParent()
        }
    })
Run Code Online (Sandbox Code Playgroud)

但我希望做的是这样的事情(这不起作用,只是我正在尝试做的一个例子):

    nodeBase.enumerateChildNodesWithName("ground" || "obstacle", usingBlock: {
        node, stop in
        if node.position.x + positionX < -self.frame.size.width/2 - sizeSegmentWidth/2 {
            node.removeFromParent()
        }
    })
Run Code Online (Sandbox Code Playgroud)

ABa*_*ith 6

你可以这样做:

enumerateChildNodesWithName("*") { node, _ in
    if node.name == "ground" || node.name == "obstacle" {
        // ...
    }
}
Run Code Online (Sandbox Code Playgroud)

"*"意味着你将枚举所有作为场景子节点的节点(假设它是场景调用enumerateChildNodesWithName).如果要检查所有要使用的节点"//*".