我想在CCSprite的顶部添加一个标签,无论标签上的文本大小是多少,它都应该精确地位于精灵的中间/中心。
现在是我的代码:
self.background = [CCSprite spriteWithFile:@"LetterBrick.png"];
self.background.position = CGPointZero;
[self addChild:self.background];
_letterLabel = [CCLabelTTF labelWithString:self.letter fontName:@"ChunkFive" fontSize:35];
[self addChild:_letterLabel];
和输出:
我只是希望它低一点呵呵。
正如您所见,x位置很好,但y位置太高。 :(
答案 0 :(得分:1)
CCLabel的anchorPoint默认为(0.5f,0.5f)。如果你想让它在它的父母的中心(你的精灵有背景,在这种情况下),只需将标签的位置设置为精灵的中心
CGPoint backSize = background.contentSize;
[label setPosition:ccp(backSize.width / 2, backSize.height / 2)];
或等于它
[label setPosition:ccpMult( ccpFromSize(background.contentSize), 0.5f )];
答案 1 :(得分:0)
试试这个
_letterLabel.anchorPoint = ccp(0.5f,0.5f);
_letterLabel.position = ccp(sprite.position.x, sprite.position.y);