xcode - EnumerateChildNodesWithName 中的多个子节点

标签 xcode swift sprite-kit nodes removechild

我正在使用 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()
        }
    })

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

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

最佳答案

你可以这样做:

enumerateChildNodesWithName("*") { node, _ in
    if node.name == "ground" || node.name == "obstacle" {
        // ...
    }
}

"*" 表示您将枚举场景的所有子节点(假设场景调用 enumerateChildNodesWithName)。如果您想检查所有 节点,您可以使用"//*"

关于xcode - EnumerateChildNodesWithName 中的多个子节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30566016/

相关文章:

ios - 将嵌套类写入 plist

ios - 尝试使用 Swift 制作一个基本的贪吃蛇游戏

ios - 为面向许多客户的项目交换 Xcode 内容的最佳方式是什么?

objective-c - NSUndoManager 基础知识

ios - 即使在成功存档后,Xcode 存档也是空的

ios - 如何在不拖动 Sprite 的情况下轻拂/滑动 Sprite ?

ios - SpriteKit 边框除底部外的所有边

xcode - 快速获取本地货币

ios - Swift 在每个部分中选择一个单元格

swift - UICollectionView didSelectItemAtIndexPath 影响多个单元格 - swift