android — Попытка настроить CCLabelTTF с целым числом как частью его строки в переполнении стека Cocos2d-X

Поэтому в Objective-C с Cocos2d я бы использовал NSMutableString с форматом, чтобы поместить переменную (оценку) в строку. Я бы взял эту строку и использовал бы CCLabel, чтобы разместить ее на экране.

Используя Cocos2D-x, я не могу найти способ получить этот результат. Простой пример был бы великолепен. Спасибо!

6

Решение

int score = 35;
float time = 0.03;
char* name = "Michael";
char text[256];
sprintf(text,"name is %s, time is %.2f, score is %d", name, time, score);
CCLabelTTF* label = CCLabelTTF::labelWithString(text,"Arial",20);
this->addChild(label);
12

Другие решения

Более простое решение для установки строки в любой момент времени (отсюда). Сначала определите макрос где-нибудь в вашем коде.

#define ccsf(...) CCString::createWithFormat(__VA_ARGS__)->getCString()

Затем вы можете изменить строку в любое время следующим образом:

m_pScoreLabel->setString(ccsf("%d pts", mCurrentScore));
5

По вопросам рекламы [email protected]