OGeek|极客世界-中国程序员成长平台

标题: objective-c - 如何在 Cocos2D 中的移动 Sprite 上添加文本? [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 09:37
标题: objective-c - 如何在 Cocos2D 中的移动 Sprite 上添加文本?

这是我在 Cocos2D 中的第一款游戏。我正在使用 Cocos2D 1.0.1。我想在应该居中对齐的移动 Sprite 上添加文本。我已经使用了带有文本的 CCLabelTTF,但我无法使其居中对齐。这是我到目前为止所做的:-

-(void)addTarget {

int enType= arc4random() % 11;

CCSprite *target=[CCSprite spriteWithFile:[NSString stringWithFormat"balloon%d.png",enType] rect:CGRectMake(0, 0, 100, 119)];

label = [[CCLabelTTF alloc] initWithString"H!" dimensions:CGSizeMake([target contentSize].width, [target contentSize].height)  
                                 alignment:UITextAlignmentCenter fontName"verdana" fontSize:20.0f];

 label.color = ccc3(60,60,60);

[target addChild:label z: 10];

//创建 Action

id actionMove = [CCMoveTo actionWithDuration:rangeDuration position:ccp(actualX,winSize.height+target.contentSize.height)];

[target runAction:[CCSequence actions:actionMove, nil]];

//[label setPosition:target.position];


// Add to targets array 

[targets addObject:target];

}

在某处我读到添加“[label setPosition:target.position];”在 sprite 的作用下,将使其居中对齐,但徒劳无功。



Best Answer-推荐答案


尝试在此处设置标签位置:

label = [[CCLabelTTF alloc] initWithString"H!" dimensions:CGSizeMake([target contentSize].width, [target contentSize].height)  
                                 alignment:UITextAlignmentCenter fontName"verdana" fontSize:20.0f];
//LABEL POSITION HERE
label.position = ccp(0, 40);
 label.color = ccc3(60,60,60);

您可能不得不使用位置值,直到将它放在您想要的位置。

关于objective-c - 如何在 Cocos2D 中的移动 Sprite 上添加文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7966319/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://sqlite.in/) Powered by Discuz! X3.4