在我的游戏中,我使用 cclabelttf 来显示玩家的得分。它在 7 月底运行良好,我的代码中没有任何更改,但是有一个:
- IOS 升级(6.1 到 7.0)
- OSX 更新
- cocos2d-x
- Xcode 更新
我没有使用 helvetica 字体。
我有一个 float 文本来显示分数,如果我杀死了一个恐怖分子,一个“+10”字符串会 float 然后消失,如果我写“+10”那么它是可见的,否则它不是。
我尝试从 UITextAlignmentLeft
更改 ccimage.mm 中的文本对齐方式与 NS
相同,
取消注释这些行:
if( [font isKindOfClass:[UIFont class] ] )
{
[str drawInRect:CGRectMake(0, startH, dim.width, dim.height) withFont:font lineBreakMode:(UILineBreakMode)UILineBreakModeWordWrap alignment:align];
}
我在 cococs2d-x 论坛上阅读了这些修改,后面有一个错误,这就是解决方案。我没有运气。
奇怪的部分是在我的游戏场景中,其中一个标签是可见的,但仅在 iPhone 模拟器上可见,但从这里开始,我认为它一定是对齐/包装问题。
最佳答案
遇到同样的问题,找到适合我的解决方案,试试这个。
修改_initWithString
在 CCImage.mm
,在行:
CGContextRef context = CGBitmapContextCreate(data, dim.width, dim.height, 8, dim.width * 4, colorSpace, kCGImageAlphaPremultipliedLast | kCGBitmapByteOrder32Big);
将其更改为:
CGContextRef context = CGBitmapContextCreate(data, (int)dim.width, (int)dim.height, 8, (int)dim.width * 4, colorSpace, kCGImageAlphaPremultipliedLast | kCGBitmapByteOrder32Big);
就三个
(int)
类型转换。
关于ios - Cocos2d-x CClabelTTF 隐形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19656073/