У меня есть SKLabelNode, являющийся дочерним элементом SKSpriteNode, потому что я пытаюсь создать класс Button для создания кнопок более простым способом. Я пробовал пару вещей, используя опорную точку SKSpriteNode, но я не совсем понимаю, что происходит. Как разместить метку на спрайте (родительский node)?
Центрировать SKLabelNode на SKSpriteNode
Ответ 1
Я понял, как это решить... вот что я сделал. Имейте в виду, что у меня есть класс под названием Button, который является подклассом SKSpriteNode.
В классе Button.m у меня есть переменная экземпляра, называемая меткой, которая является SKLabelNode. Я добавляю ярлык node в качестве дочернего элемента к кнопке, затем устанавливаю горизонтальные и вертикальные режимы выравнивания в центр.
label = [[SKLabelNode alloc] init];
[self addChild:label];
[label setHorizontalAlignmentMode:SKLabelHorizontalAlignmentModeCenter];
[label setVerticalAlignmentMode:SKLabelVerticalAlignmentModeCenter];
Ответ 2
Это добавит ваш ярлык в центр сцены в комплекте спрайтов:
yourLabel.horizontalAlignmentMode = .Center;
yourLabel.verticalAlignmentMode = .Center