-(void)drawGUIForPlayer:(PlayerClass *)player {
SKShapeNode *outlineBox = [SKShapeNode shapeNodeWithRect:CGRectMake(0, self.view.frame.size.height - 60, 150, 30)];
outlineBox.fillColor = [SKColor colorWithRed:0 green:0 blue:1 alpha:0.3];
outlineBox.strokeColor = [SKColor clearColor];
[self addChild:outlineBox];
SKLabelNode *playerName = [SKLabelNode labelNodeWithText:player.name];
playerName.color = [SKColor colorWithWhite:1 alpha:0.5];
playerName.fontSize = 10;
[outlineBox addChild:playerName];
[playerName setHorizontalAlignmentMode:SKLabelHorizontalAlignmentModeCenter];
[playerName setVerticalAlignmentMode:SKLabelVerticalAlignmentModeCenter];
}
以前,我會創建這樣一種技術來說添加一個框,然後把標籤作爲框的子項。基本上使盒子成爲一個視圖,所以我可以將標籤定位在相對於shapenode的位置。然而,我得到了一個0,0的位置,它相對於self.view而不是outlineBox.view。定位精靈相對於他們的父母
任何人都可以指向正確的方向嗎?
儘量避免在你的場景中使用視圖座標,使用場景座標,那麼scene.frame.size或scene.size – Knight0fDragon