我試圖在swift中添加兩個各自具有各自材質的SKSpriteNodes,但是在模擬過程中「刀片」不會顯示在屏幕上。雖然我可以毫無困難地讓「手柄」出現。所以我的問題是,如何快速添加一個自己的孩子的孩子,以便一切按預期工作?如何在swift中向自己的孩子添加子孩子
var Handle = SKSpriteNode(imageNamed: "Handle.png")
var Blade = SKSpriteNode(imageNamed: "Blade.png")
override func didMoveToView(view: SKView) {
Handle.position = CGPointMake(self.size.width/2, self.size.height/14)
Blade.position = CGPointMake(Handle.position.x, Handle.position.y + 124)
self.addChild(Handle)
Handle.addChild(Blade)
}
你可以嘗試這樣做:'Blade.position = CGPointMake(Handle.frame.width/2,Handle.frame.height/2)'。它應該出現在Handle節點的中心。看看是否:放置刀片的位置太遠,刀片顯示正確,...)。 _PS:您應該爲變量採用lowerCamelCase語法_ – lchamp
'Blade.position = CGPointZero'會將刀片放置在與Handle相同的位置,因爲子節點的位置相對於其父節點。 – 0x141E