0

我的游戏使用 cocos2d-x 2.0.4。CCLabelTTF 在 iOS 6 中的设备和模拟器上都运行良好。但是当我在 iOS 7.0 中测试它时,它不起作用。这是我的代码。

    int nScore = 10;
    char str[50];
    sprintf(str, "SCORE : %d", nScore);
    CCLabelTTF *lbl = CCLabelTTF::create(str, "Marker Felt", 50);
    lbl->setPosition(ccp(size.width*0.5, size.height*0.88));
    lbl->setColor(ccRED);
    this->addChild(lbl);

现在不显示分数。但它显示在 iOS 6 中。还有一个奇怪的问题。如果我像这样更改上面的代码,它可以工作。

    CCLabelTTF *lbl = CCLabelTTF::create("SCORE", "Marker Felt", 50);
    lbl->setPosition(ccp(size.width*0.5, size.height*0.88));
    lbl->setColor(ccRED);
    this->addChild(lbl);

但是,如果我再次像下面这样更改此代码,它就不起作用了。(不可见)

    CCLabelTTF *lbl = CCLabelTTF::create("Score", "Marker Felt", 50);
    lbl->setPosition(ccp(size.width*0.5, size.height*0.88));
    lbl->setColor(ccRED);
    this->addChild(lbl);

也许这是区分大小写的问题。

即使文本是大写的,最后下面的代码也不起作用。我只加了10号。

    CCLabelTTF *lbl = CCLabelTTF::create("SCORE : 10", "Marker Felt", 50);
    lbl->setPosition(ccp(size.width*0.5, size.height*0.88));
    lbl->setColor(ccRED);
    this->addChild(lbl);

任何帮助将不胜感激。提前致谢。

4

2 回答 2

0

升级您在 3.0 中修复的 cocos2d-x 版本,如果您使用的是 cocos2dx 旧版本,请更改为CCimage.mm这个声明

CGContextRef context = CGBitmapContextCreate(data,dim.width,dim.height, 8,dim.width * 4, colorSpace, kCGImageAlphaPremultipliedLast | kCGBitmapByteOrder32Big);

CGContextRef context = CGBitmapContextCreate(data, (size_t)dim.width, (size_t)dim.height, 8, (size_t)dim.width * 4, colorSpace, kCGImageAlphaPremultipliedLast | kCGBitmapByteOrder32Big);
于 2014-05-31T07:32:32.203 回答
0

我在使用 cocos2d-x 2.1.3 时遇到了同样的问题。我发现链接指出该问题是影响 iOS 7 中标签的错误。为了解决此问题,您需要更新引擎或手动合并此拉取请求。

于 2013-11-09T06:51:14.857 回答