我有一个带附加图像的SKSpriteNode
menu_bg = SKSpriteNode(imageNamed: "menu_bg")
此外,我想要将一个SKLabelNode添加为menu_bg的子节点,并且此SKLabelNode应该在menu_bg节点的水平和垂直方向上居中。 为此,我将menu_bg添加到场景
self.addChild(menu_bg)
我创建了一个新的SKLabelNode并将其添加到menu_bg并尝试将其置于中心
self.menu_bg.addChild(menuTitleLabel!)
self.menuTitleLabel!.position = CGPoint(x: menu_bg.frame.width/2, y: menu_bg.frame.height/2)
但标签未显示居中。 我缺少什么想法?
我也尝试添加
self.menuTitleLabel!.horizontalAlignmentMode = SKLabelHorizontalAlignmentMode.Center
但没有效果,......
任何想法?
答案 0 :(得分:0)
如果您正在设置位置,则还需要考虑menuTitleLabel的高度和宽度。
self.menuTitleLabel!.position = CGPoint(x: menu_bg.frame.width/2 - (menuTitleLabel.frame.width/2), y: menu_bg.frame.height/2 -(menuTitleLabel.frame.height/2))
这应该是它的中心。
答案 1 :(得分:0)
我跟着@Glideman的提示,当我将标签设置为0,0时它们已经居中,因为SpriteNode的锚点总是在它的中心 - 正如我现在所学到的那样;-) 感谢您的帮助和寻找解决方案的方法:)