【问题标题】:SKSpriteNodes in SKViewSKView 中的 SKSpriteNodes
【发布时间】:2014-11-11 05:51:42
【问题描述】:

我正在尝试让我的 SKView 中的所有 SKSpriteNode 更改它们的 alpha。这是我的代码:

if let nodes = self.gameSKView.scene!.children as? [SKSpriteNode] {
        for node in nodes {
            if node.name != "bg" {
                node.alpha = 0
            }
        }
}

使用这些代码,节点始终为 nil,但当我在 gameSKView 中打印内容时,它不是 nil。

println("\(self.gameSKView.scene!.children)")

任何人都可以尝试帮助我吗?提前致谢。

【问题讨论】:

  • 使用sprite kits节点枚举,见sk编程指南

标签: swift sprite-kit skspritenode skview


【解决方案1】:
self.gameSKView.scene!.children as? [SKSpriteNode]

如果所有子元素都是SKSpriteNode,则为非空 - as? 不是用于选择特定类型元素的过滤器,它是一种类型安全的“强制转换”。

如果不知道你想要完成什么以及更多代码,我很难提供任何建议如何做你想做的事。

【讨论】:

  • 我用“as?[SKSpriteNode]”进行了投射,因为我知道我的gameSKView中的所有孩子都是SKSpriteNode。我想更改我的 gameSKView 中每个节点的 alpha。现在我想要的是正确的方法,因为显然,节点变量为空
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-11-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多