在Swift

时间:2015-10-03 16:42:18

标签: ios swift parent-child child-nodes

我有2个SKSpritenodes:机器人&电脑 robot是parentNode,计算机是childNode

 robot.addChild(computer)

现在我想通过使用parentNode的名称来更改计算机的大小。 所以我需要一个代码:robot.childnode.size.width = xxx 我怎么能这样做?

原因是:我有多个名为robot的skspritenode,我可以通过碰撞检测它们,所以我需要这个代码来访问该特定parentNode的子节点。

1 个答案:

答案 0 :(得分:1)

在将computer节点添加到robot时为其设置名称。

computer.name = "computer"
robot.addChild(computer)

稍后你可以写......

if let computer = robot.childNodeWithName("computer") as? SKSpriteNode {
    // you can install El Capitain and change the properties of computer here
}

...或者您更喜欢单行版本:

(robot.childNodeWithName("computer") as? SKSpriteNode)?.size.height = 100

希望这有帮助。