Ich versuche eine SKLabelNode-Position in die Mitte eines SKSpriteNode zu setzen. Ich habe in anderen Fragen zu diesem Thema gesucht, aber keines dieser Arbeit mit Swift 3.Einstellung von SKLabelNode auf SKSpriteNode Swift
Dies ist mein Code:
var letter1background = SKSpriteNode(imageNamed: "letterbackground")
var letter1text = SKLabelNode()
override func didMove(to view: SKView) {
letter1background.position = CGPoint(x: self.size.width/8, y: self.size.height/7.5)
letter1background.size = CGSize(width: self.size.width/8, height: self.size.width/8)
letter1background.zPosition = -5
self.addChild(letter1background)
letter1text.text = "C"
letter1text.fontName = "Verdana-Bold "
letter1text.fontSize = 28
letter1text.fontColor = UIColor.white
letter1text.zPosition = 0
letter1text.horizontalAlignmentMode = letter1background.center
letter1text.verticalAlignmentMode = letter1background.center
self.letter1background.addChild(letter1text)
}
Dieser Code sieht aus wie es aber in Swift 3 funktionieren würde ich jetzt das bekommen Fehler:
Value of type 'SKSpriteNode' has no member 'center'
ich habe auch versucht:
self.letter1text.position = CGPoint(x: letter1background.frame.width/2 - (letter1text.frame.width/2), y: letter1background.frame.height/2 -(letter1text.frame.height/2))
&
letter1text.position = CGPoint(x:letter1background.frame.midX, y:letter1background.frame.midY)
Aber ich Ergebnisse noch wie diese:
Irgendwelche Ideen?
Mögliche Duplikat [Mitte ein SKLabelNode auf einem SKSpriteNode] (http://stackoverflow.com/questions/25818989/centre-a-sklabelnode -on-a-skspritenode) – shallowThought
@NiallKehoe SKSpriteNode hatte niemals eine Eigenschaft namens 'center', wie ich weiß. Das ist eine Eigenschaft, die für die Ansichten spezifisch ist, nicht Knoten. – Whirlwind